C/C의 포인터 변수 선언: 스타일 이해
C/C에서 포인터 변수 선언은 두 가지 표기법에 대한 논쟁을 불러일으켰습니다.
(a) 문자* p;
(b) char *p;
두 가지 스타일 모두 유효하지만 선택은 서로 다른 프로그래밍 관점과 강조점을 반영합니다.
스타일 (a): 표현 강조
이 스타일은 포인터를 취급합니다 변수(예: p)를 단일 엔터티로 사용합니다. 여기서 별표(*)는 이름 선언의 일부입니다. 구문 관점에서 별표는 이름 p에 바인딩되고 변수의 유형(예: char에 대한 포인터)을 나타냅니다. 이 접근 방식은 표현식을 강조하고 선언을 필수 형식으로 간주하는 전통적인 C 관점과 일치합니다.
스타일 (b): 유형 강조
반면 스타일 (b) 유형에 더 중점을 둡니다. 별표(*)를 유형 사양(예: char에 대한 포인터)의 일부로 간주합니다. 이 스타일은 유형 및 객체 지향 원칙에 중점을 두는 C 프로그래밍 패러다임에 더 가깝습니다.
Bjarne Stroustrup의 관점
Bjarne Stroustrup, the C의 창시자는 후자 스타일(int p;)을 옹호합니다. 변수 유형(int*)을 지정합니다. 그는 이 접근 방식이 C의 고급 기능에 더 잘 부합한다고 강조합니다.
상황별 고려 사항
한 줄에 여러 포인터 변수를 선언할 때 변수에 별표를 사용합니다. 이름(스타일 (a))은 혼란을 초래할 수 있습니다. 예를 들면 다음과 같습니다.
char c, d;
이 경우 c와 d가 모두 문자에 대한 포인터라는 사실이 덜 명확할 수 있습니다. . 유형 지정(스타일 (b))과 함께 별표를 사용하면 이 모호함이 해결됩니다.
char c, d;
결론
스타일(a)과 스타일(b) 사이의 선택은 결국 개인 취향과 프로그래밍 철학의 문제입니다. 스타일 (a)는 C 배경에서 온 사람들에게 더 직관적일 수 있는 반면, 스타일 (b)는 C의 유형 중심 접근 방식에 더 적합합니다.
위 내용은 C/C 포인터 선언: `char* p` 대 `char *p` – 어떤 스타일이 가장 좋나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!