¿Qué sucede (detrás de las cortinas) cuando se ejecuta esto? int x = 7; x = x++; Es decir, cuando una variable se incrementa y se asigna a sí misma en una declaración? Compilé y ejecuté esto. xsigue siendo 7 incluso después de toda la declaración . En mi libro, …
Recién comencé a estudiar C, y cuando hice un ejemplo sobre pasar puntero a puntero como parámetro de una función, encontré un problema. Este es mi código de muestra: #include <stdio.h> #include <string.h> #include <stdlib.h> int* allocateIntArray(int* ptr, int size){ if (ptr != NULL){ for (int i = 0; i …
¿Puede explicarme la salida de este código Java? int a=5,i; i=++a + ++a + a++; i=a++ + ++a + ++a; a=++a + ++a + a++; System.out.println(a); System.out.println(i); La salida es 20 en ambos casos.
Actualmente estoy aprendiendo C ++ y aprendí sobre el incremento hace un tiempo. Sé que puedes usar "++ x" para hacer el incremento antes y "x ++" para hacerlo después. Aún así, realmente no sé cuándo usar cualquiera de los dos ... Nunca he usado realmente "++ x" y las …
Consideremos el siguiente código: int main() { int i = 2; int b = ++i++; return 3; } Se compila con lo siguiente con un error: <source>: In function 'int main()': <source>:3:16: error: lvalue required as increment operand 3 | int b = ++i++; | ^~ Esto me parece justo. …
Tengo una pregunta, cómo funciona el compilador en el siguiente código: #include<stdio.h> int main(void) { int b=12, c=11; int d = (b == c++) ? (c+1) : (c-1); printf("d = %i\n", d); } No estoy seguro de por qué el resultado es d = 11.