Jaką wartość mają następujące wyrażenia :
printf("%f",(int)24.4); //dlaczego tutaj wartość wyjściowa to 0 a nie 24
(int)5e-2 + 3.9; //co to?
6<2>-1 //yyyyy 6<2 =1 ale co dalej
mam jeszcze pytanie do tego kodu niżej.Chodzi o to dlaczego po wejściu do funkcji 2*f(&i)+2, .wartość zwrócona nie została zdekrementowana, a dopiero póżniej
#include <stdio.h>
#include <stdlib.h>
int f(int *p){
return (*p)--;
}
int g(int n){
return n*3;
}
int main(){
int i= 1, j=2;
printf("\n %d %d\n", 2*f(&i)+2, g(f(&j)+g(1))); //tutaj najpierw wchodzimy do funkcji f z adresem zmiennej j i potem do funkcji g(1) ,
//a potem do funkcji g(z wartością po dodniu)???
//g(2+3) = g(5) = 18 no a kompilator pokazuje 15. nie rozumiem, odnosiłem się do tego że funkcja zdekrementuje wartość j po wykonaniu instrukcji printf
return 0;
}