首頁 >後端開發 >C++ >為什麼C/C++變數不能以數字開頭?

為什麼C/C++變數不能以數字開頭?

王林
王林轉載
2023-08-25 14:45:091902瀏覽

為什麼C/C++變數不能以數字開頭?

在 C/C 中,變數名稱可以包含字母、數字和底線 (_) 字元。 C/C 語言中有一些關鍵字,除了它們之外,所有內容都被視為標識符。標識符是變數、常數、函數等的名稱。

我們不能指定以數字開頭的標識符,因為編譯器有以下七個階段。

  • 詞法分析
  • 語法分析
  • 語意分析
  • 中程式碼產生
  • 程式碼最佳化
  • #程式碼產生
  • 符號表

以上都不支援變數以數字開頭。這是因為編譯器會混淆它是數字還是標識符,直到它到達數字後面的字母表。因此編譯器將不得不回溯到不支援的詞法分析階段。編譯器在查看第一個字元後應該能夠將標記識別為標識符或文字。

以下是示範 C 語言變數宣告的範例。

範例

#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;
}

上面的程式會導致錯誤“整數常數上的後綴“s”無效”,因為變數以 5 開頭。如果我們刪除它,那麼程式將正常工作。

示範的範例新程式如下。

範例

 現場示範

#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;
}

輸出

#上述程式的輸出如下。

The value of variable _4a : 3
The value of variable b : 12

以上是為什麼C/C++變數不能以數字開頭?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除