>백엔드 개발 >C++ >C/C++ 변수는 왜 숫자로 시작할 수 없나요?

C/C++ 변수는 왜 숫자로 시작할 수 없나요?

王林
王林앞으로
2023-08-25 14:45:091891검색

C/C++ 변수는 왜 숫자로 시작할 수 없나요?

C/C++에서 변수 이름에는 문자, 숫자, 밑줄(_) 문자가 포함될 수 있습니다. C/C++ 언어에는 몇 가지 키워드가 있지만 이를 제외한 모든 것은 식별자로 간주됩니다. 식별자는 변수, 상수, 함수 등의 이름입니다.

컴파일러에는 다음과 같은 7단계가 있으므로 숫자로 시작하는 식별자를 지정할 수 없습니다.

  • 어휘 분석
  • 구문 분석
  • 의미 분석
  • 중간 코드 생성
  • 코드 최적화
  • 코드 생성
  • 기호 테이블

위의 어느 것도 숫자로 시작하는 변수를 지원하지 않습니다. 이는 컴파일러가 숫자 뒤의 알파벳에 도달할 때까지 숫자인지 식별자인지 혼동하기 때문입니다. 따라서 컴파일러는 지원되지 않는 어휘 분석 단계로 역추적해야 합니다. 컴파일러는 첫 번째 문자를 살펴본 후 토큰을 식별자 또는 리터럴로 인식할 수 있어야 합니다.

다음은 C 언어 변수 선언을 보여주는 예제입니다.

Example

#include <stdio.h>
int main() {
   int 5s = 8;
   int _4a = 3;
   int b = 12;
   printf("The value of variable 5s : %d", 5s);
   printf("The value of variable _4a : %d", _4a);
   printf("\nThe value of variable b : %d", b);
   return 0;
}

위 프로그램에서는 변수가 5로 시작하기 때문에 "정수 상수에 대한 접미사 's'가 잘못되었습니다."라는 오류가 발생합니다. 이를 제거하면 프로그램이 제대로 작동할 것입니다.

시연되는 새 프로그램 샘플은 다음과 같습니다.

Example

라이브 시연

#include <stdio.h>
int main() {
   int _4a = 3;
   int b = 12;
   printf("The value of variable _4a : %d", _4a);
   printf("\nThe value of variable b : %d", b);
   return 0;
}

Output

위 프로그램의 출력은 다음과 같습니다.

rreee

위 내용은 C/C++ 변수는 왜 숫자로 시작할 수 없나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제