Terdapat tiga kategori pengecam bahasa C: 1. Kata kunci, yang merupakan rentetan dengan makna khusus yang ditentukan oleh bahasa C, sering juga dipanggil perkataan terpelihara 2. Pengecam yang dipratentukan, yang dipratakrifkan oleh Pengecam sistem , seperti nama fungsi, definisi makro dan jenis alias dalam pustaka fungsi 3. Pengecam yang ditentukan pengguna ialah pengecam yang ditakrifkan oleh pengguna mengikut keperluan mereka sendiri dan biasanya digunakan untuk menamakan pembolehubah, fungsi, tatasusunan, dsb. Jika pengecam pengguna adalah sama dengan kata kunci, ralat akan berlaku semasa penyusunan, jika ia sama dengan pengecam yang dipratentukan, tiada ralat akan berlaku semasa penyusunan, tetapi maksud asal pengecam yang dipratentukan hilang.
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi c99, komputer Dell G3.
Dalam bahasa pengaturcaraan komputer, pengecam ialah nama yang digunakan oleh pengguna semasa pengaturcaraan Ia digunakan untuk menamakan pembolehubah, pemalar, fungsi, blok pernyataan, dll., untuk mewujudkan hubungan antara nama dan penggunaan. Pengecam biasanya terdiri daripada huruf, nombor dan aksara lain.
Jenis pengecam bahasa C
Pengecam bahasa C termasuk kata kunci, pengecam pengguna dan pengecam yang dipratentukan. Bahasa C menetapkan bahawa pengecam hanya boleh terdiri daripada huruf, nombor dan garis bawah, dan aksara pertama mestilah huruf atau garis bawah, bukan nombor.
1. Kata kunci
Kata kunci ialah rentetan dengan makna khusus yang ditentukan oleh bahasa C Ia juga biasanya dipanggil perkataan terpelihara, seperti int, char, long, float , tidak ditandatangani, dsb. Pengecam yang kami takrifkan tidak boleh sama dengan kata kunci, jika tidak ralat akan berlaku.
Anda juga boleh memahami kata kunci sebagai pengecam dengan makna istimewa Ia telah digunakan oleh sistem dan kami tidak boleh menggunakannya lagi.
Terdapat 32 kata kunci yang dinyatakan dalam bahasa C standard:
关键字 | 说明 |
---|---|
auto | 声明自动变量 |
short | 声明短整型变量或函数 |
int | 声明整型变量或函数 |
long | 声明长整型变量或函数 |
float | 声明浮点型变量或函数 |
double | 声明双精度变量或函数 |
char | 声明字符型变量或函数 |
struct | 声明结构体变量或函数 |
union | 声明共用数据类型 |
enum | 声明枚举类型 |
typedef | 用以给数据类型取别名 |
const | 声明只读变量 |
unsigned | 声明无符号类型变量或函数 |
signed | 声明有符号类型变量或函数 |
extern | 声明变量是在其他文件正声明 |
register | 声明寄存器变量 |
static | 声明静态变量 |
volatile | 说明变量在程序执行中可被隐含地改变 |
void | 声明函数无返回值或无参数,声明无类型指针 |
if | 条件语句 |
else | 条件语句否定分支(与 if 连用) |
switch | 用于开关语句 |
case | 开关语句分支 |
for | 一种循环语句 |
do | 循环语句的循环体 |
while | 循环语句的循环条件 |
goto | 无条件跳转语句 |
continue | 结束当前循环,开始下一轮循环 |
break | 跳出当前循环 |
default | 开关语句中的“其他”分支 |
sizeof | 计算数据类型长度 |
return | 子程序返回语句(可以带参数,也可不带参数)循环条件 |
2. Pengecam pratakrif
Pengecam yang dipratakrifkan oleh sistem dalam bahasa C, seperti nama fungsi, takrifan makro dan alias jenis (typedef) dalam pustaka fungsi.
Pengecam yang dipratentukan mempunyai ciri-ciri makna yang jelas, seperti fungsi "output format" (nama Inggeris penuh ditambah singkatan: printf), "input format" (nama Inggeris penuh ditambah singkatan: scanf), sin, isalnum , dsb. tunggu.
Pengecam yang dipratentukan boleh digunakan sebagai pengecam pengguna, tetapi ini akan kehilangan makna asal yang ditentukan oleh sistem dan penggunaan yang tidak wajar akan menyebabkan ralat program.
Nota: Nama fungsi dalam pustaka fungsi bahasa C boleh menjadi nama pembolehubah yang ditentukan pengguna! ! !
3. Pengecam yang ditakrifkan pengguna
Pengecam yang ditakrifkan oleh pengguna mengikut keperluan mereka. Biasanya digunakan untuk menamakan pembolehubah, fungsi, tatasusunan, dsb. Jika pengecam pengguna adalah sama dengan kata kunci, ralat akan berlaku semasa penyusunan, jika ia sama dengan pengecam yang dipratentukan, tiada ralat akan berlaku semasa penyusunan, tetapi maksud asal pengecam yang telah ditetapkan akan hilang atau hasilnya akan hilang; menjadi salah, jadi pengecam yang dipratentukan Biasanya tidak digunakan sebagai pengecam pengguna.
Bahasa C menetapkan bahawa pengecam yang ditentukan pengguna boleh menjadi rentetan yang terdiri daripada huruf, nombor dan garis bawah (A~Z, a~z, 0~9, _), dan aksara pertama mesti ialah huruf atau garis bawah.
(1) Pengecam hanya boleh bermula dengan huruf besar dan huruf kecil Inggeris, dan garis bawah (_) , dan tidak boleh bermula dengan mana-mana aksara lain atau nombor .
Sebagai contoh, berikut ialah contoh yang salah:
int %a;//错误,标识符不能以符号开头 int 8C[8];//错误,不能以数字开头
(2) Pengecam hanya boleh mengandungi huruf besar dan huruf kecil Inggeris, garis bawah dan Angka Arab, tetapi tidak boleh bermula dengan angka Arab .
int a8;//正确 int _adf589S_5;//正确
(3) Pengecam peka huruf besar/kecil
Dalam bahasa C, huruf besar dan huruf kecil dianggap sebagai aksara yang berbeza, jadi pengecam yang dinyatakan oleh ABC dan abc adalah berbeza (Acd dan acd, caDd dan cadd, _8Fc9 dan _8fc9 adalah semua pengecam yang berbeza).
(4) Pengecam tidak boleh menjadi kata kunci.
int float;//错误,float是关键字。 int Float;//正确
(5) Piawaian ANSI menetapkan bahawa pengecam boleh daripada sebarang panjang , tetapi nama luaran mestilah boleh dibezakan secara unik oleh sekurang-kurangnya 6 yang pertama aksara, Dan ia tidak sensitif huruf besar-besaran. Ini kerana sesetengah penyusun (seperti MS C untuk PC IBM) hanya mengenali 6 aksara pertama.
Selain peraturan keras ini, sebaiknya namakan pengecam dengan makna khusus untuk memudahkan pemerhatian, pembacaan dan penyelenggaraan.
//定义某长方体的长度、宽度和高度 int a;//高度 int b;//宽度 int c;//高度
boleh ditukar kepada takrif berikut:
int c_Long; int c_Width; int c_Height;
Cadangan berkaitan: "Tutorial Video C"
Atas ialah kandungan terperinci Apakah jenis pengecam yang terdapat dalam bahasa C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!