Co się dzieje (za zasłonami), gdy jest to wykonywane? int x = 7; x = x++; To znaczy, kiedy zmienna jest zwiększana i przypisywana do siebie w jednej instrukcji? Skompilowałem i wykonałem to. xwynosi wciąż 7, nawet po całym oświadczeniu . W mojej książce jest napisane, że xjest zwiększane!
Właśnie zacząłem uczyć się C i kiedy robiłem jeden przykład dotyczący przekazywania wskaźnika do wskaźnika jako parametru funkcji, znalazłem problem. Oto mój przykładowy kod: #include <stdio.h> #include <string.h> #include <stdlib.h> int* allocateIntArray(int* ptr, int size){ if (ptr != NULL){ for (int i = 0; i < size; i++){ ptr[i] = …
Czy możesz mi wyjaśnić wynik działania tego kodu 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); W obu przypadkach wynik wynosi 20
Obecnie uczę się C ++, a o inkrementacji dowiedziałem się jakiś czas temu. Wiem, że możesz użyć „++ x”, aby dokonać inkrementacji przed i „x ++”, aby zrobić to po. Mimo to naprawdę nie wiem, kiedy użyć któregokolwiek z tych dwóch… Tak naprawdę nigdy nie użyłem „++ x” i jak …
Rozważmy następujący kod: int main() { int i = 2; int b = ++i++; return 3; } Kompiluje się z następującymi błędami: <source>: In function 'int main()': <source>:3:16: error: lvalue required as increment operand 3 | int b = ++i++; | ^~ Brzmi dla mnie uczciwie. Przyrost Postfiksa ma wyższy …
Mam pytanie, w jaki sposób kompilator działa na następującym kodzie: #include<stdio.h> int main(void) { int b=12, c=11; int d = (b == c++) ? (c+1) : (c-1); printf("d = %i\n", d); } Nie jestem pewien, dlaczego wynik jest d = 11.
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.