Mengapa sizeofoperator mengembalikan ukuran yang lebih besar untuk struktur daripada ukuran total anggota
sizeof mengacu pada operator C / C ++ Standar untuk mengembalikan ukuran dalam byte dari ekspresi atau tipe data.
Saya ingin tahu cara mendapatkan ukuran objek seperti string, integer, dll dengan Python. Pertanyaan terkait: Berapa banyak byte per elemen yang ada dalam daftar Python (tuple)? Saya menggunakan file XML yang berisi bidang ukuran yang menentukan ukuran nilai. Saya harus menguraikan XML ini dan...
Berikut adalah kode yang dikompilasi di dev c ++ windows: #include <stdio.h> int main() { int x = 5; printf("%d and ", sizeof(x++)); // note 1 printf("%d\n", x); // note 2 return 0; } Saya berharap xmenjadi 6 setelah mengeksekusi catatan 1 . Namun, hasilnya adalah: 4 and 5 Adakah...
Pertama, berikut adalah beberapa kode: int main() { int days[] = {1,2,3,4,5}; int *ptr = days; printf("%u\n", sizeof(days)); printf("%u\n", sizeof(ptr)); return 0; } Apakah ada cara untuk mengetahui ukuran array yang ptrmenunjuk (bukan hanya memberikan ukurannya, yaitu empat byte pada...
Saya ingin tahu ukuran yang ditempati oleh objek JavaScript. Ambil fungsi berikut: function Marks(){ this.maxMarks = 100; } function Student(){ this.firstName = "firstName"; this.lastName = "lastName"; this.marks = new Marks(); } Sekarang saya instantiate student: var stud = new...
Saya punya sedikit kode tentang sizeofoperator dengan operator ternary: #include <stdio.h> #include <stdbool.h> int main() { bool a = true; printf("%zu\n", sizeof(bool)); // Ok printf("%zu\n", sizeof(a)); // Ok printf("%zu\n", sizeof(a ? true : false)); // Why 4? return...
Mengapa kode ini dikompilasi? _Static uint32_t my_arr[2]; _Static_assert(sizeof(my_arr) == 8, ""); _Static_assert(sizeof(my_arr[0]) == 4, ""); _Static_assert(sizeof(my_arr)[0] == 4, ""); 2 menegaskan pertama jelas benar, tetapi saya akan berharap baris terakhir gagal, karena pemahaman saya adalah...
Saya tidak dapat menemukan jawaban dalam dokumentasi standar. Apakah standar bahasa C ++ harus sizeof(bool)selalu 1 (untuk 1 byte), atau apakah ukuran ini ditentukan oleh
Jika saya menggunakan mallockode saya: int *x = malloc(sizeof(int)); Saya mendapatkan peringatan ini dari gcc: new.c:7: warning: implicit declaration of function ‘malloc’ new.c:7: warning: incompatible implicit declaration of built-in function
Saya mencoba mendeklarasikan struct yang bergantung pada struct lain. Saya ingin menggunakan sizeofuntuk menjadi aman / bertele-tele. typedef struct _parent { float calc ; char text[255] ; int used ; } parent_t ; Sekarang saya ingin mendeklarasikan struct child_tyang memiliki ukuran yang sama...
Mengapa ukuran array yang dikirim sebagai parameter tidak sama dengan main? #include <stdio.h> void PrintSize(int p_someArray[10]); int main () { int myArray[10]; printf("%d\n", sizeof(myArray)); /* As expected, 40 */ PrintSize(myArray);/* Prints 4, not 40 */ } void PrintSize(int...
Di C ++ sizeof('a') == sizeof(char) == 1,. Ini masuk akal secara intuitif, karena 'a'merupakan karakter literal, dan sizeof(char) == 1seperti yang didefinisikan oleh standar. Namun dalam C sizeof('a') == sizeof(int),. Artinya, tampaknya literal karakter C sebenarnya adalah bilangan bulat. Ada yang...
Kita tahu itu sizeofadalah operator yang digunakan untuk menghitung ukuran tipe data dan ekspresi apa pun, dan ketika operan adalah ekspresi, tanda kurung dapat dihilangkan. int main() { int a; sizeof int; sizeof( int ); sizeof a; sizeof( a ); return 0; } penggunaan pertama...
Mengapa sizeofdianggap sebagai operator dan bukan fungsi? Properti apa yang diperlukan untuk memenuhi syarat sebagai operator?
На этот вопрос есть ответы на Stack Overflow на русском : Кто-нибудь встречал в своей практике sizeof (char)! = 1? Apakah ada mesin (atau kompiler), di mana sizeof(char) != 1? Apakah standar C99 mengatakan bahwa sizeof(char)pada penerapan kepatuhan standar HARUS tepat...
Saya bekerja dengan memori beberapa lambda di C ++, tapi saya agak bingung dengan ukurannya. Ini kode tes saya: #include <iostream> #include <string> int main() { auto f = [](){ return 17; }; std::cout << f() << std::endl; std::cout << &f <<...
Ketika kami memeriksa ukuran fungsi menggunakan sizeof(), kami selalu mendapatkan 1 byte . Apa yang dimaksud dengan 1 byte ini?
Konteks Kami mem-porting kode C yang awalnya dikompilasi menggunakan kompiler C 8-bit untuk mikrokontroler PIC. Ungkapan umum yang digunakan untuk mencegah variabel global yang tidak ditandatangani (misalnya, penghitung kesalahan) berguling kembali ke nol adalah sebagai berikut: if(~counter)...
#include <stdio.h> int main() { char a = 'A'; int b = 90000; float c = 6.5; printf("%d ",sizeof(6.5)); printf("%d ",sizeof(90000)); printf("%d ",sizeof('A')); printf("%d ",sizeof(c)); printf("%d ",sizeof(b)); printf("%d",sizeof(a)); return 0; } Outputnya adalah: 8 4 4 4 4...