> 백엔드 개발 > C++ > C/C에서 포인터를 선언할 때 별표는 어디로 가야 합니까?

C/C에서 포인터를 선언할 때 별표는 어디로 가야 합니까?

Mary-Kate Olsen
풀어 주다: 2024-12-02 04:33:12
원래의
572명이 탐색했습니다.

Where Should the Asterisk Go When Declaring Pointers in C/C  ?

C/C의 포인터 선언: 별표 배치

C/C에는 포인터 변수 선언에 대해 두 가지 별도의 표기법이 있습니다.

  • 기법 (a): char* p;
  • 표기법 (b): char *p;

별표(*) 배치 이러한 표기법은 프로그래머들 사이에서 논쟁의 대상이 되어 왔습니다.

표기법 뒤에 숨어 있는 합리적 이유 (a)

(a) 표기법은 C/C의 문법 규칙을 따르기 때문에 가끔 사용됩니다. char* p; 선언에서 별표는 변수 이름 p와 연관되어 있습니다. 이는 *p가 char 유형임을 의미합니다.

Notation (b)의 경우

그러나 많은 프로그래머는 여러 가지 이유로 Notation (b)를 선호합니다.

  • 포인터 변수의 타입을 강조합니다. 문자 *p; p가 char 변수에 대한 포인터임을 명확하게 나타냅니다.
  • C의 "3의 규칙"을 따릅니다. C에서 * 연산자는 일반적으로 포인터를 나타내고, & 연산자는 참조를 나타내며, [] 연산자는 배열을 나타냅니다. 포인터 선언에서 유형 옆에 별표를 배치하는 것은 이 규칙에 따릅니다.
  • 여러 포인터를 동시에 선언할 때 가독성이 향상됩니다. 예를 들어, char *c, *d; char* c, *d;보다 읽기 쉽습니다.

결론

결국 표기법(a)과 표기법(b) 중 선택은 다음과 같습니다. 스타일과 선호도의 문제입니다. 그러나 C의 유형 강조로 인해 표기법 (b)가 더 논리적이고 직관적인 접근 방식이 됩니다.

위 내용은 C/C에서 포인터를 선언할 때 별표는 어디로 가야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿