«sizeof» 태그된 질문

sizeof는 표현식 또는 데이터 유형의 크기를 바이트 단위로 반환하는 표준 C / C ++ 연산자를 나타냅니다.


5
람다의 크기가 1 바이트 인 이유는 무엇입니까?
나는 C ++에서 일부 람다의 메모리로 작업하고 있지만 크기에 약간 의아해합니다. 내 테스트 코드는 다음과 같습니다. #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; } 여기에서 실행할 수 있습니다 …
89 c++  c++11  lambda  c++14  sizeof 



4
이 구조는 어떻게 sizeof == 0을 가질 수 있습니까?
를 sizeof반환 할 구성을 요청하는 오래된 게시물이 있습니다 0. 표준에 따라 어떤 유형이나 변수도 0의 크기를 가질 수 없다는 높은 평판 사용자의 높은 점수 답변이 있습니다. 그리고 저는 그것에 100 % 동의합니다. 그러나이 솔루션을 제시하는 새로운 답변 이 있습니다. struct ZeroMemory { int *a[0]; }; 나는 막 반대표를 던지고 댓글을 …

5
비트 단위 연산으로 예기치 않은 가변 크기
문맥 원래 PIC 마이크로 컨트롤러 용 8 비트 C 컴파일러를 사용하여 컴파일 된 C 코드를 포팅하고 있습니다. 부호없는 전역 변수 (예 : 오류 카운터)가 0으로 롤오버되는 것을 방지하기 위해 사용 된 일반적인 관용구는 다음과 같습니다. if(~counter) counter++; 여기서 비트 연산자는 모든 비트를 반전 시키며 명령문은 counter최대 값보다 작은 경우에만 참 …


1
인스턴스를 만들지 않고 std :: array <T, N>의 요소 수를 얻는 방법은 무엇입니까?
이 std::array&lt;T, N&gt;::size()있지만 정적이 아니므로의 인스턴스가 필요합니다 std::array. (는 IS는 반환 값을 얻을 수있는 방법이 있습니까 N의를 std::array&lt;T, N&gt;배열의 인스턴스를 생성하지 않고)는? 일반 배열의 경우을 사용할 수 sizeof있었지만 이것이 sizeof(std::array&lt;T, N&gt;) == N * sizeof(T)사실 이라는 보장은 없습니다 .
9 c++  arrays  c++11  sizeof 
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.