Stavo lavorando alle nozioni di base di C e stavo cercando di risolvere il problema di seguito potrebbe qualcuno spiegare perché l'output della variabile c
è diverso?Perché c non viene incrementato nell'output?
Qual è l'output del seguente programma?
int main()
{
int a = -3, b = 2, c= 0, d;
d = ++a && ++b || ++c;
printf ("a = %d, b = %d, c = %d, d = %d", a, b, c, d);
}
Ans: -2, 3, 0, 1
Perché c
non è incrementato in uscita?
d = ((-2 && 3) || (++ c)). È cortocircuitato prima che arrivi a c. –
Cosa stai cercando di fare? O stai semplicemente giocando con un po 'di codice? – Bart
semplicemente risolvendo c puzzle – Nisha