«sizeof» etiketlenmiş sorular

sizeof, boyutu bir ifade veya veri türünün bayt cinsinden döndürmesi için Standart C / C ++ operatörünü ifade eder.

3
Sizeof (char)! = 1 veya en azından CHAR_BIT> 8 olan makineler var mı?
На этот вопрос есть ответы на Yığın Taşması için русском : Кто-нибудь встречал в своей практике sizeof (char)! = 1? Makineler (veya derleyiciler) var sizeof(char) != 1mı , nerede ? Mu C99 standart söylüyor sizeof(char)standart uygunluk uygulanmasına ilişkin tam olarak 1 OLMALIDIR? Varsa, lütfen bana bölüm numarasını ve alıntıyı verin. …
93 c  char  standards  sizeof  c99 

5
Bir lambda neden 1 bayt boyutuna sahiptir?
C ++ 'da bazı lambdaların hafızası üzerinde çalışıyorum, ancak boyutları beni biraz şaşırttı. İşte test kodum: #include <iostream> #include <string> int main() { auto f = [](){ return 17; }; std::cout << f() << std::endl; std::cout << &f << std::endl; std::cout << sizeof(f) << std::endl; } Buradan çalıştırabilirsiniz: http://fiddle.jyt.io/github/b13f682d1237eb69ebdc60728bb52598 Çıktı: …
90 c++  c++11  lambda  c++14  sizeof 


5
Bitsel işlem beklenmedik değişken boyutuna neden olur
bağlam Başlangıçta PIC mikrodenetleyici için 8 bit C derleyicisi kullanılarak derlenen C kodunu taşıyoruz. İmzasız global değişkenlerin (örneğin, hata sayaçları) sıfıra geri dönmesini önlemek için kullanılan yaygın bir deyim şudur: if(~counter) counter++; Bitsel operatör burada tüm bitleri tersine çevirir ve ifade sadece countermaksimum değerden azsa doğrudur . Daha da önemlisi, …


1
Örnek oluşturmak zorunda kalmadan std :: array <T, N> öğelerinin sayısını nasıl alabilirim?
Var std::array&lt;T, N&gt;::size(), ama statik değil, bu yüzden bir örneği gerektirir std::array. (Olup döndürür değeri elde etmek için bir yol var Nbir std::array&lt;T, N&gt;dizinin bir örneğini oluşturmak zorunda kalmadan)? Normal bir dizi için kullanmış olabilirdim sizeof, ama sizeof(std::array&lt;T, N&gt;) == N * sizeof(T)doğru olduğunu garanti edemiyorum.
9 c++  arrays  c++11  sizeof 
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.