반응형
char* 배열의 C 크기
저는.char*
배열:
char *tbl[] = { "1", "2", "3" };
어떻게 사용합니까?sizeof
연산자가 배열의 요소 수를 구하는데, 여기 3?
아래는 효과가 있었지만, 맞습니까?
int n = sizeof(tbl) / sizeof(tbl[0])
네.
size_t n = sizeof(tbl) / sizeof(tbl[0])
가장 전형적인 방법입니다
를 사용하는 것에 유의하시기 바랍니다.int
배열 크기에 대해서는 최적의 아이디어가 아닙니다.
더 짧고 깨끗한 버전은 다음과 같습니다.
sizeof tbl / sizeof *tbl
:)
네, 배열 tb1의 원소 개수를 알려줄 것입니다.
int n = sizeof(tbl) / sizeof(tbl[0])
해석:
(tb1)의 크기는 전체 배열의 크기, 즉 tb1 = 3바이트를 제공합니다.
(tb1[0])의 크기는 tb1[0]이 문자 값(주소 tb1+0의 값) = 1바이트를 제공하므로 문자의 크기를 제공합니다.
그 둘을 나누면 3가지 요소가 나옵니다.
언급URL : https://stackoverflow.com/questions/1559925/c-sizeof-char-array
반응형
'programing' 카테고리의 다른 글
하루 중에 얻는 시간과 동등한 속도로 더 빠른 속도 (0) | 2023.09.24 |
---|---|
powershell: 문자열에서 모든 regex 문자를 탈출하는 방법 (0) | 2023.09.24 |
@미디어 미디어 쿼리 및 ASP.NET MVC 면도기 구문 충돌 (0) | 2023.09.24 |
pyspark 데이터 프레임에서 문자열 유형의 열을 int 형식으로 변환하는 방법은 무엇입니까? (0) | 2023.09.24 |
mysql/mariadb에서 ID가 같은 여러 행을 WHERE로 쿼리하는 방법 (0) | 2023.09.24 |