Jak ma wyglądać funkcja która zwraca 3 wartości?
Np podajemy jej x,y,z a ona wylicza x1, X2, X3?
Np podajemy jej x,y,z a ona wylicza x1, X2, X3?
Czy wolisz polską wersję strony elektroda?
Nie, dziękuję Przekieruj mnie tam
void funkcja( int argument, int *wynik1, int *wynik2)
{
/* ... */
*wynik1 = costam;
*wynik2 = cosinnego;
}
int main( )
{
int zmienna1, zmienna2;
/* ... */
funkcja( 7, &zmienna1, &zmienna2);
/* ... */
}
class Oblicz
{
int x1, x2, x3;
public:
int wx1, wx2, wx3;
Oblicz(int ax1, int ax2, int ax3) : x1(ax1), x2(ax2), x3(ax3) {//Tu obliczasz};
};
Oblicz obiekt(0,1,2);
wynik=obiekt.wx1; //itd dla pozostałych zmiennych
typedef struct //definicja typu 3-bajtowego
{
char x1, y1, z1;
} _out;
_out nazwa_zmiennej; //definicja zmiennej
unsigned char funckja(char x1,char y1,char z1)
{
//tu dajesz swój kod wylizenia z x,y,z -> x1,y1,z1
nazwa_zmiennej.x1 = wartosc1;
nazwa_zmiennej.y1 = wartosc2;
nazwa_zmiennej.z1 = wartosc3;
//i ew tu jesli wyliczenei sie powiedzie zwracasz 1 (return 1)
}
narasta napisał:Tu masz jedno z rozwiązań. Dla odmiany nie na wzkaźnikach![]()
typedef struct //definicja typu 3-bajtowego { char x1, y1, z1; } _out; _out nazwa_zmiennej; //definicja zmiennej unsigned char funckja(char x1,char y1,char z1) { //tu dajesz swój kod wylizenia z x,y,z -> x1,y1,z1 nazwa_zmiennej.x1 = wartosc1; nazwa_zmiennej.y1 = wartosc2; nazwa_zmiennej.z1 = wartosc3; //i ew tu jesli wyliczenei sie powiedzie zwracasz 1 (return 1) }
typedef struct {
float re;
float im;
} complex_t;
void conjugate(complex_t *toConjugate){
toConjugate->im *= -1.0;
}
int main(){
complex_t a = {8.0f, 10.3f};
conjugate(&a);
printf("%f", a.im);
}