Pytania oznaczone «sizeof»

sizeof odnosi się do standardowego operatora C / C ++ służącego do zwracania rozmiaru wyrażenia lub typu danych w bajtach.

505
Dlaczego sizeof (x ++) nie zwiększa x?

Oto kod skompilowany w oknach dev c ++: #include <stdio.h> int main() { int x = 5; printf("%d and ", sizeof(x++)); // note 1 printf("%d\n", x); // note 2 return 0; } Spodziewam xsię, że będę mieć 6 lat po wykonaniu uwagi 1 . Jednak wynik jest następujący: 4 and 5 Czy ktoś może...

296
Jak uzyskać rozmiar obiektu JavaScript?

Chcę poznać rozmiar zajmowany przez obiekt JavaScript. Weź następującą funkcję: function Marks(){ this.maxMarks = 100; } function Student(){ this.firstName = "firstName"; this.lastName = "lastName"; this.marks = new Marks(); } Teraz tworzę instancję student: var stud = new...

109
sizeof pojedynczego elementu struktury w C

Próbuję zadeklarować strukturę, która jest zależna od innej struktury. Chcę sizeofbyć bezpieczny / pedantyczny. typedef struct _parent { float calc ; char text[255] ; int used ; } parent_t ; Teraz chcę zadeklarować strukturę, child_tktóra ma taki sam rozmiar jak parent_t.text. W jaki sposób...

103
Dlaczego literały znaków C są ints zamiast chars?

W C ++ sizeof('a') == sizeof(char) == 1. Ma to sens intuicyjny, ponieważ 'a'jest to literał znakowy i sizeof(char) == 1zgodnie z definicją w standardzie. W C jednak sizeof('a') == sizeof(int). Oznacza to, że wydaje się, że literały znakowe C są w rzeczywistości liczbami całkowitymi. Czy ktoś wie...

90
Dlaczego lambda ma rozmiar 1 bajtu?

Pracuję z pamięcią niektórych lambd w C ++, ale trochę mnie dziwi ich rozmiar. Oto mój kod testowy: #include <iostream> #include <string> int main() { auto f = [](){ return 17; }; std::cout << f() << std::endl; std::cout << &f << std::endl;...

80
Jak ta struktura może mieć sizeof == 0?

Jest stary post z prośbą o konstrukcję, dla której sizeofwróci 0. Istnieje kilka odpowiedzi z wysokimi wynikami od użytkowników o wysokiej reputacji, którzy twierdzą, że standardowo żaden typ ani zmienna nie może mieć rozmiaru 0. I zgadzam się z tym w 100%. Jest jednak nowa odpowiedź, która...