c語言標識符與關鍵字
Ⅰ c語言中標識符是什麼
c語言中標識符是由字母(A-Z,a-z)、數字(0-9)、下劃線「_」組成,並且首字元不能是數字,但可以是字母或者下劃線。例如,正確的標識符:abc,a1,prog_to。C語言中把標識符分為三類:關鍵字,預定義標識符,用戶自定義標識符。
標示符(IDentifier)是指用來標識某個實體的一個符號。在不同的應用環境下有不同的含義。在編程語言中,標識符就是程序員自己規定的具有特定含義的詞,比如類名稱,屬性名稱,變數名等。標識符可能是字、編號、字母、符號,也可能是由上述元素所組成。
Ⅱ C語言的關鍵字可不可以做C語言的標識符
1、關鍵字是不能作為標識符的,這是C語言基本的原則。
2、標識符的取名法則:
1) 標識符由字母、數字、下劃線「_」組成,並且首字母不能是數字.
2) 不能把C語言關鍵字作為標識符.
3) 標識符長度限制8字元.
(註:8字元長度限制是C89標准,C99標准已經擴充長度,其實大部分工業標准都更長)。
4) 標識符對大小寫敏感.
下面的標識符名是合法的:
year,Day,ATOK,x1,_ CWS,_change_to
而下面的標識符名是不合法的:
#123,.COM,$100,1996Y,1_2_3,Win3.2
Ⅲ C語言關鍵字是什麼
所謂關鍵字就是已被 C語言編輯工具本身使用, 不能作其它用途使用的字。
auto :聲明自動變數 一般不使用
double :聲明雙精度變數或函數
int: 聲明整型變數或函數
struct:聲明結構體變數或函數
break:跳出當前循環
else :條件語句否定分支(與 if 連用)
long :聲明長整型變數或函數
switch :用於開關語句
case:開關語句分支
enum :聲明枚舉類型
register:聲明積存器變數
typedef:用以給數據類型取別名(當然還有其他作用)
char :聲明字元型變數或函數
extern:聲明變數是在其他文件正聲明(也可以看做是引用變數)
return :子程序返回語句(可以帶參數,也看不帶參數)
union:聲明聯合數據類型
const :聲明只讀變數
float:聲明浮點型變數或函數
short :聲明短整型變數或函數
unsigned:聲明無符號類型變數或函數
continue:結束當前循環,開始下一輪循環
for:一種循環語句(可意會不可言傳)
signed:生命有符號類型變數或函數
void :聲明函數無返回值或無參數,聲明無類型指針(基本上就這三個作用)
default:開關語句中的「其他」分支
goto:無條件跳轉語句
sizeof:計算數據類型長度
volatile:說明變數在程序執行中可被隱含地改變
do :循環語句的循環體
while :循環語句的循環條件
static :聲明靜態變數
if:條件語句
Ⅳ 在C中,關鍵字是不是標識符
標識符,就是由數字 字母和_組成的, 而關鍵字就由特定的字元組成的, 所以關鍵字屬於標識符, 准確的說是特殊的標識符, 即用戶是不能取同樣名稱的標識符的,
Ⅳ C語言中關鍵字和標示符什麼區別
關鍵字是標識符的一種.
標識符是指: 可以當作變數名, 函數名等的.
而關鍵字為什麼不能當作變數名或函數名?
因為關鍵字它有自己的用處, 比如int, 它是用來定義變數等的, 如果它用來當作變數名, 就會造成混淆.
如:
int int = 10;
int i = (int+10);
這樣就會造成混淆, 因為(type)是強制類型轉換, 但是這里的意思是要把int的值加上10, 然後再賦給i. 編譯器不知道這到底是干什麼的, 肯定會出錯.
標識符是無數個(其實不是無數的, 但它非常多, 好像說C語言支持最長的標識符是32個)
但是關鍵字只有32個.
Ⅵ c語言標識符與關鍵字間用什麼隔開
標識符與關鍵字間用空格隔開
Ⅶ C語言中標識符和關鍵字要用什麼隔開
關鍵字:C語言的關鍵字有32個,常見例如:int char float double enum等
標識符:即變數名,由下劃線,數字,字母組成,第一個不能是數字
通常用來做聲明、定義,之間用空格隔開:int i;
Ⅷ C語言裡面的預定義標識符,關鍵字有哪些啊,求解
關鍵字是被系統定義過的,不能挪作他用.而預定義標識符有些是你只要不包含頭文件,這個標識符就不會被定義,你就可以用作別的用處.如:sleep函數.這個函數你不包含頭文件編譯器會報錯(至少vc++6.0是這樣)這樣你只需要定義它,你就可以把它當作一個別的東西來用.
Ⅸ 關鍵字和一般標識符的區別
關鍵字與一般標識符的區別:
1、主體的不同:
關鍵字是作為編程語言的保留字的,是整個編程語言范圍內保留的不能用於標識變數的標識符。
一般的標識符,也就是用戶定義的變數名,方法名等自定義的標識符。
2、特點是不同的:
作為編程語言的關鍵字,關鍵字是不能夠拿來作為變數標識符的,同時標識符不能與關鍵字重名。
一般的標識符需要遵循一定的規范,有字元、數字、下劃線等組成。
(9)c語言標識符與關鍵字擴展閱讀:
標識符的命名規則:
1、標識符由字母(A-Z,a-z)、數字(0-9)、下劃線「_」組成,並且首字元不能是數字,但可以是字母或者下劃線。
2、不能把C語言關鍵字作為用戶標識符,例如if,for,while等。
3、標識符長度是由機器上的編譯系統決定的,一般的限制為8字元(註:8字元長度限制是C89標准,C99標准已經擴充長度,其實大部分工業標准都更長)。
4、標識符對大小寫敏感,即嚴格區分大小寫。一般對變數名用小寫,符號常量命名用大寫。
注意:標識符可由任何字母數字字元串形成,長度往往有限制(通常為6到8個字元),只要最左邊字元是字母。有些語言還容許採用專用字元。
參考資料來源:網路-標識符
Ⅹ C語言的按照標識符、關鍵字、常用編譯指令有哪些
我們可以在C源程序中插入傳給編譯程序的各中指令,這些指令被稱為預處理器指令,它們擴充了程序設計的環境。現把常用的預處理命令總結如下:
1. 預處理程序
按照ANSI標準的定義,預處理程序應該處理以下指令:
#if #ifdef #ifndef #else #elif
#endif
#define
#undef
#line
#error
#pragma
#include
顯然,上述所有的12個預處理指令都以符號#開始,,每條預處理指令必須獨佔一行。
2. #define
#define指令定義一個標識符和一個串(也就是字元集),在源程序中發現該標識符時,都用該串替換之。這種標識符稱為宏名字,相應的替換稱為宏代換。一般形式如下:
#define macro-name char-sequence
這種語句不用分號結尾。宏名字和串之間可以有多個空白符,但串開始後只能以新行終止。
例如:我們使用LEFT代表1,用RIGHT代表0,我們使用兩個#define指令:
#define LEFT 1
#define RIGHT 0
每當在源程序中遇到LEFT或RIGHT時,編譯程序都用1或0替換。
定義一個宏名字之後,可以在其他宏定義中使用,例如:
#define ONE 1
#define TWO ONE+ONE
#define THREE ONE+TWO
宏代換就是用相關的串替代標識符。因此,如果希望定義一條標准錯誤信息時,可以如下定義:
#define ERROR_MS 「Standard error on input \n」
如果一個串長於一行,可在行尾用反斜線」\」續行,如下:
#define LONG_STRING 「This is a very very long \
String that is used as an example」
3. #error
#error指令強制編譯程序停止編譯,它主要用於程序調試。#error指令的一般形式是:
#error error-message
注意,宏串error-message不用雙引號包圍。遇到#error指令時,錯誤信息被顯示,可能同時還顯示編譯程序作者預先定義的其他內容。
4. #include
程序中的#include指令要求編譯程序讀入另一個源文件。被讀入文件的名字必須用雙引號(「」)或一對尖括弧(<>)包圍,例如:
#include 「stdio.h」
#include <stdio.h>
都使C編譯程序讀入並編譯頭文件以用於I/O系統庫函數。
包含文件中可以包含其他#include指令,稱為嵌套包含。允許的最大嵌套深度隨編譯器而變。
文件名被雙括弧或尖括弧包圍決定了對指定文件的搜索方式。文件名被尖括弧包圍時,搜索按編譯程序作者的定義進行,一般用於搜索某些專門放置包含文件的特殊目錄。當文件名被雙括弧包圍時,搜索按編譯程序實時的規定進行,一般搜索當前目錄。如未發現,再按尖括弧包圍時的辦法重新搜索一次。
通常,絕大多數程序員使用尖括弧包圍標準的頭文件,雙引號用於包圍與當前程序相關的文件名。
5. 條件編譯指令
若干編譯指令允許程序員有選擇的編譯程序源代碼的不同部分,這種過程稱為條件編譯。
5.1#if、#else、#elif #endif
條件編譯指令中最常用的或許是#if,#else,#elif和#endif。這些指令允許程序員根據常數表達式的結果有條件的包圍部分代碼。
#if的一般形式是:
#if constant-expression
Statement sequence
#endif
如#if後的常數表達式為真,則#if和#endif中間的代碼被編譯,否則忽略該代碼段。#endif標記#if塊的結束。
#else指令的作用與C語言的else相似,#if指令失敗時它可以作為備選指令。例如:
#include <stdio.h>
#define MAX 100
Int main(void)
{
#if MAX>99
printf(「Compiled for array greater than 99.\n」);
#else
printf(「Complied for small array.\n」);
#endif
return 0;
}