C의 포인터 크기 가져오기
C에서 포인터의 크기를 가져오려면 어떻게 해야 합니까?sizeof
? 가리키는 값이 아닌 포인터를 저장하기 위해 메모리를 할당하려고 합니다.
임의 유형이 주어졌을 때(선택했습니다)char
여기에, 그러나 그것은 구체적인 예를 위해서입니다):
char *p;
다음 표현 중 하나를 사용할 수 있습니다.
sizeof(p)
sizeof(char *)
A로 이어짐malloc()
다음과 같은 호출:
char **ppc = malloc(sizeof(char *));
char **ppc = malloc(sizeof(p));
char **ppc = malloc(sizeof(*ppc));
마지막 버전은 다음과 같은 유형의ppc
변경하면 식을 통해 올바른 공간을 할당할 수 있습니다.
이렇게 하면 효과가 있을 것입니다.
sizeof(void*)
char *ptr;
char **ptr2 = malloc(sizeof(ptr));
목적을 달성할 수 있어야 합니다.플랫폼이 무엇이든 간에 이 코드는 작동해야 합니다.
언급URL : https://stackoverflow.com/questions/9760113/get-size-of-pointer-in-c
'source' 카테고리의 다른 글
인라인 자바스크립트 연기하는 방법? (0) | 2023.11.01 |
---|---|
자바스크립트에서 배열을 선언할 때 지켜야 할 가장 좋은 방법은 무엇입니까? (0) | 2023.11.01 |
2-D 배열 앨리어싱 시 예기치 않은 스트렐렌 최적화 (0) | 2023.11.01 |
조건문과 3항 연산자를 사용하지 않고 C에서 최대 3개의 숫자 찾기 (0) | 2023.11.01 |
python에서 두 변수가 동일한 개체를 참조하는지 비교 (0) | 2023.11.01 |