c语言的37个关键字都是什么 怎么现在C语言变成37个关键字了?

c\u8bed\u8a00\u768437\u4e2a\u5173\u952e\u5b57\u90fd\u662f\u4ec0\u4e48

32\u4e2a\u5173\u952e\u5b57\u5427\u3002
auto \uff1a\u58f0\u660e\u81ea\u52a8\u53d8\u91cf
\u3000\u3000double \uff1a\u58f0\u660e\u53cc\u7cbe\u5ea6\u53d8\u91cf\u6216\u51fd\u6570
\u3000\u3000int\uff1a \u58f0\u660e\u6574\u578b\u53d8\u91cf\u6216\u51fd\u6570
\u3000\u3000struct\uff1a\u58f0\u660e\u7ed3\u6784\u4f53\u53d8\u91cf\u6216\u51fd\u6570
\u3000\u3000break\uff1a\u8df3\u51fa\u5f53\u524d\u5faa\u73af
\u3000\u3000else \uff1a\u6761\u4ef6\u8bed\u53e5\u5426\u5b9a\u5206\u652f\uff08\u4e0e if \u8fde\u7528\uff09
\u3000\u3000long \uff1a\u58f0\u660e\u957f\u6574\u578b\u53d8\u91cf\u6216\u51fd\u6570
\u3000\u3000switch :\u7528\u4e8e\u5f00\u5173\u8bed\u53e5
\u3000\u3000case\uff1a\u5f00\u5173\u8bed\u53e5\u5206\u652f
\u3000\u3000enum \uff1a\u58f0\u660e\u679a\u4e3e\u7c7b\u578b
\u3000\u3000register\uff1a\u58f0\u660e\u5bc4\u5b58\u5668\u53d8\u91cf
\u3000\u3000typedef\uff1a\u7528\u4ee5\u7ed9\u6570\u636e\u7c7b\u578b\u53d6\u522b\u540d
\u3000\u3000char \uff1a\u58f0\u660e\u5b57\u7b26\u578b\u53d8\u91cf\u6216\u51fd\u6570
\u3000\u3000extern\uff1a\u58f0\u660e\u53d8\u91cf\u662f\u5728\u5176\u4ed6\u6587\u4ef6\u6b63\u58f0\u660e
\u3000\u3000return \uff1a\u5b50\u7a0b\u5e8f\u8fd4\u56de\u8bed\u53e5\uff08\u53ef\u4ee5\u5e26\u53c2\u6570\uff0c\u4e5f\u53ef\u4e0d\u5e26\u53c2\u6570\uff09
\u3000\u3000union\uff1a\u58f0\u660e\u5171\u7528\u6570\u636e\u7c7b\u578b
\u3000\u3000const \uff1a\u58f0\u660e\u53ea\u8bfb\u53d8\u91cf
\u3000\u3000float\uff1a\u58f0\u660e\u6d6e\u70b9\u578b\u53d8\u91cf\u6216\u51fd\u6570
\u3000\u3000short \uff1a\u58f0\u660e\u77ed\u6574\u578b\u53d8\u91cf\u6216\u51fd\u6570
\u3000\u3000unsigned\uff1a\u58f0\u660e\u65e0\u7b26\u53f7\u7c7b\u578b\u53d8\u91cf\u6216\u51fd\u6570
\u3000\u3000continue\uff1a\u7ed3\u675f\u5f53\u524d\u5faa\u73af\uff0c\u5f00\u59cb\u4e0b\u4e00\u8f6e\u5faa\u73af
\u3000\u3000for\uff1a\u4e00\u79cd\u5faa\u73af\u8bed\u53e5
\u3000\u3000signed\uff1a\u58f0\u660e\u6709\u7b26\u53f7\u7c7b\u578b\u53d8\u91cf\u6216\u51fd\u6570
\u3000\u3000void \uff1a\u58f0\u660e\u51fd\u6570\u65e0\u8fd4\u56de\u503c\u6216\u65e0\u53c2\u6570\uff0c\u58f0\u660e\u65e0\u7c7b\u578b\u6307\u9488
\u3000\u3000default\uff1a\u5f00\u5173\u8bed\u53e5\u4e2d\u7684\u201c\u5176\u4ed6\u201d\u5206\u652f
\u3000\u3000goto\uff1a\u65e0\u6761\u4ef6\u8df3\u8f6c\u8bed\u53e5
\u3000\u3000sizeof\uff1a\u8ba1\u7b97\u6570\u636e\u7c7b\u578b\u957f\u5ea6
\u3000\u3000volatile\uff1a\u8bf4\u660e\u53d8\u91cf\u5728\u7a0b\u5e8f\u6267\u884c\u4e2d\u53ef\u88ab\u9690\u542b\u5730\u6539\u53d8
\u3000\u3000do \uff1a\u5faa\u73af\u8bed\u53e5\u7684\u5faa\u73af\u4f53
\u3000\u3000while \uff1a\u5faa\u73af\u8bed\u53e5\u7684\u5faa\u73af\u6761\u4ef6
\u3000\u3000static \uff1a\u58f0\u660e\u9759\u6001\u53d8\u91cf
\u3000\u3000if:\u6761\u4ef6\u8bed\u53e5

\u539f\u5148\u7684C89\u6807\u51c6\u4e2d\u53ea\u670932\u4e2a\u5173\u952e\u5b57
\u7136\u540e\u57281999\u5e74\u4e4b\u540e\u8fdb\u884c\u4e86\u4e24\u6b21\u6280\u672f\u4fee\u6b63\uff0c\u65b0\u51fa\u53f0\u4e86C99\u6807\u51c6 \u65b0\u589e\u52a0\u4e865\u4e2a\u5173\u952e\u5b57
\u5206\u522b\u662f\uff1arestrict\uff0cinline\uff0c_Complex\uff0c_Imaginary\uff0c_Bool
\u4e0d\u8fc7\u76ee\u524d\u5927\u591a\u6570\u7684\u7f16\u8bd1\u7cfb\u7edf\u6682\u65f6\u53ea\u652f\u6301C89\u6807\u51c6 \u4f60\u53ea\u8981\u4e86\u89e3C99\u65b0\u6807\u51c6\u5373\u53ef

关键字就是已被C语言本身使用,不能作其它用途使用的字。例如关键字不能用作变量名、函数名等
由ANSI标准定义的C语言关键字共32个:
auto double int struct break else long switch
case enum register typedef char extern return union
const float short unsigned continue for signed void
default goto sizeof volatile do if while static
根据关键字的作用,可以将关键字分为数据类型关键字和流程控制关键字两大类。
1 数据类型关键字
A.基本数据类型(5个)
void :声明函数无返回值或无参数,声明无类型指针,显式丢弃运算结果
char :字符型类型数据,属于整型数据的一种
int :整型数据,通常为编译器指定的机器字长
float :单精度浮点型数据,属于浮点数据的一种
double :双精度浮点型数据,属于浮点数据的一种
B .类型修饰关键字(4个)
short :修饰int,短整型数据,可省略被修饰的int。
long :修饰int,长整形数据,可省略被修饰的int。
signed :修饰整型数据,有符号数据类型
unsigned :修饰整型数据,无符号数据类型
C .复杂类型关键字(5个)
struct :结构体声明
union :共用体声明
enum :枚举声明
typedef :声明类型别名
sizeof :得到特定类型或特定类型变量的大小
D .存储级别关键字(6个)
auto :指定为自动变量,由编译器自动分配及释放。通常在栈上分配
static :指定为静态变量,分配在静态变量区,修饰函数时,指定函数作用域为文件内部
register :指定为寄存器变量,建议编译器将变量存储到寄存器中使用,也可以修饰函数形参,建议编译器通过寄存器而不是堆栈传递参数
extern :指定对应变量为外部变量,即标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。
const :与volatile合称“cv特性”,指定变量不可被当前线程/进程改变(但有可能被系统或其他线程/进程改变)
volatile :与const合称“cv特性”,指定变量的值有可能会被系统或其他进程/线程改变,强制编译器每次从内存中取得该变量的值
2 流程控制关键字
A .跳转结构(4个)
return :用在函数体中,返回特定值(或者是void值,即不返回值)
continue :结束当前循环,开始下一轮循环
break :跳出当前循环或switch结构
goto :无条件跳转语句
B .分支结构(5个)
if :条件语句,后面不需要放分号
else :条件语句否定分支(与if连用)
switch :开关语句(多重分支语句)
case :开关语句中的分支标记
default :开关语句中的“其他”分支,可选。
C .循环结构(3个)
for:for循环结构,for(1;2;3)4;的执行顺序为1->2->4->3->2...循环,其中2为循环条件。在整个for循环过程中,表达式1只计算一次,表达式2和表达式3则可能计算多次,也可能一次也不计算。循环体可能多次执行,也可能一次都不执行。
do :do循环结构,do 1 while(2); 的执行顺序是1->2->1...循环,2为循环条件
while :while循环结构,while(1) 2; 的执行顺序是1->2->1...循环,1为循环条件
以上循环语句,当循环条件表达式为真则继续循环,为假则跳出循环。

1999年12月16日,ISO推出了C99标准,该标准新增了5个C语言关键字:
inline restrict _Bool _Complex _Imaginary

32个关键字吧。
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:条件语句

由ANSI标准定义的C语言关键字只有32个:
auto double int struct break else long switch
case enum register typedef char extern return union
const float short unsigned continue for signed void
default goto sizeof volatile do if while static
37个不是标准的

都好乱·····
32个关键字的是ANSI1989年提出的。
37个关键字的是ANSI1999年提出的。
注意这是针对C语言的。
C99在C89的基础上增加了5个关键字:-Bool -Imaginary restrict -Complex inline
加上32个刚好37个

  • c璇█鐨37涓叧閿瓧閮芥槸浠涔
    绛旓細鍏抽敭瀛楀氨鏄凡琚獵璇█鏈韩浣跨敤锛屼笉鑳戒綔鍏跺畠鐢ㄩ斾娇鐢ㄧ殑瀛銆備緥濡傚叧閿瓧涓嶈兘鐢ㄤ綔鍙橀噺鍚嶃佸嚱鏁板悕绛 鐢盇NSI鏍囧噯瀹氫箟鐨凜璇█鍏抽敭瀛楀叡32涓細auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void default go...
  • c璇█鐨37涓叧閿瓧閮芥槸浠涔
    绛旓細C璇█鐨勫叧閿瓧鍏辨湁32涓紝鏍规嵁鍏抽敭瀛楃殑浣滅敤锛鍙垎鍏朵负鏁版嵁绫诲瀷鍏抽敭瀛椼佹帶鍒惰鍙ュ叧閿瓧銆佸瓨鍌ㄧ被鍨嬪叧閿瓧鍜屽叾瀹冨叧閿瓧鍥涚被銆傝繖涓槸32涓叧閿瓧锛欳璇█锛屾槸涓绉嶉氱敤鐨勩佽繃绋嬪紡鐨勭紪绋嬭瑷锛屽箍娉涚敤浜庣郴缁熶笌搴旂敤杞欢鐨勫紑鍙戙傚叿鏈夐珮鏁堛佺伒娲汇佸姛鑳戒赴瀵屻佽〃杈惧姏寮哄拰杈冮珮鐨勭Щ妞嶆х瓑鐗圭偣锛屽湪绋嬪簭鍛樹腑澶囧彈闈掔潗銆傛渶杩...
  • c璇█鐨37涓叧閿瓧閮芥槸浠涔
    绛旓細32涓叧閿瓧鍚сauto 锛氬0鏄庤嚜鍔ㄥ彉閲 double 锛氬0鏄庡弻绮惧害鍙橀噺鎴栧嚱鏁 int锛 澹版槑鏁村瀷鍙橀噺鎴栧嚱鏁 struct锛氬0鏄庣粨鏋勪綋鍙橀噺鎴栧嚱鏁 break锛氳烦鍑哄綋鍓嶅惊鐜 else 锛氭潯浠惰鍙ュ惁瀹氬垎鏀紙涓 if 杩炵敤锛塴ong 锛氬0鏄庨暱鏁村瀷鍙橀噺鎴栧嚱鏁 switch :鐢ㄤ簬寮鍏宠鍙 case锛氬紑鍏宠鍙ュ垎鏀 enum 锛氬0鏄庢灇涓剧被鍨 register锛氬0鏄庡瘎瀛樺櫒鍙...
  • C璇█37涓叧閿瓧鍜9绉嶆帶鍒惰鍙 鏈濂借兘鍒椾釜琛ㄦ牸缁欐垜鎵撳嵃涓涓
    绛旓細32涓叧閿瓧锛auto 灞閮ㄥ彉閲忥紙鑷姩鍌ㄥ瓨锛塨reak鏃犳潯浠堕鍑虹▼搴忔渶鍐呭眰寰幆 case switch璇彞涓夋嫨椤 char鍗曞瓧鑺傛暣鍨嬫暟鎹 const瀹氫箟涓嶅彲鏇存敼鐨勫父閲忓 continue涓柇鏈寰幆锛屽苟杞悜涓嬩竴娆″惊鐜 default switch璇彞涓殑榛樿閫夋嫨椤 do 鐢ㄤ簬鏋勬垚do...while寰幆璇彞 double瀹氫箟鍙岀簿搴︽诞鐐瑰瀷鏁版嵁 else鏋勬垚if...els...
  • 鎬庝箞鐜板湪C璇█鍙樻垚37涓叧閿瓧浜?
    绛旓細鍘熷厛鐨C89鏍囧噯涓彧鏈32涓叧閿瓧 鐒跺悗鍦1999骞翠箣鍚庤繘琛屼簡涓ゆ鎶鏈慨姝o紝鏂板嚭鍙颁簡C99鏍囧噯 鏂板鍔犱簡5涓叧閿瓧 鍒嗗埆鏄細restrict锛宨nline锛宊Complex锛宊Imaginary锛宊Bool 涓嶈繃鐩墠澶у鏁扮殑缂栬瘧绯荤粺鏆傛椂鍙敮鎸丆89鏍囧噯 浣犲彧瑕佷簡瑙99鏂版爣鍑嗗嵆鍙
  • 澶уC璇█鍏ラ棬鍩虹鐭ヨ瘑鐐逛綘鐭ラ亾澶氬皯
    绛旓細骞朵笖绗竴涓繀椤讳负瀛楁瘝鎴栧垯鏄笅鍒掔嚎銆傜涓涓负鏁板瓧灏遍敊 2銆佹爣璇嗙鍒嗕负鍏抽敭瀛銆侀瀹氫箟鏍囪瘑绗︺佺敤鎴锋爣璇嗙鍏抽敭瀛(37涓):涓嶅彲浠ヤ綔涓虹敤鎴锋爣璇嗙鍙枫俶aindefine scanf printf 閮戒笉鏄叧閿瓧銆傝糠鎯戜綘鐨勫湴鏂 if 鏄彲浠ュ仛涓虹敤鎴锋爣璇嗙銆傚洜涓 if 涓殑绗竴涓瓧姣嶅ぇ鍐欎簡锛屾墍浠ヤ笉鏄叧閿瓧銆傞瀹氫箟鏍囪瘑绗:鑳岃 ...
  • 濡備綍鐞嗚ВC璇█涓叧閿瓧鐨勪娇鐢?
    绛旓細5*3*3=45 C璇█鏄竴闂ㄩ潰鍚戣繃绋嬬殑璁$畻鏈虹紪绋嬭瑷锛屼笌C++銆丣ava绛夐潰鍚戝璞$紪绋嬭瑷鏈夋墍涓嶅悓銆C璇█鐨璁捐鐩爣鏄彁渚涗竴绉嶈兘浠ョ畝鏄撶殑鏂瑰紡缂栬瘧銆佸鐞嗕綆绾у瓨鍌ㄥ櫒銆佷粎浜х敓灏戦噺鐨勬満鍣ㄧ爜浠ュ強涓嶉渶瑕佷换浣曡繍琛岀幆澧冩敮鎸佷究鑳借繍琛岀殑缂栫▼璇█銆侰璇█鎻忚堪闂姣旀眹缂栬瑷杩呴熴佸伐浣滈噺灏忋佸彲璇绘уソ銆佹槗浜庤皟璇曘佷慨鏀瑰拰绉绘锛...
  • C璇█鍩虹鐭ヨ瘑鎬荤粨澶у叏
    绛旓細C璇█涓瓨鍌ㄧ被鍒張鍒嗕负鍥涚被:鑷姩(auto)銆侀潤鎬(static)銆佸瘎瀛樺櫒鐨(register)鍜屽閮ㄧ殑(extern) ; 鐢ㄥ叧閿瓧auto瀹氫箟鐨勫彉閲忎负鑷姩鍙橀噺,auto鍙互鐪佺暐,auto涓嶅啓鍒欓殣鍚畾涓衡滆嚜鍔ㄥ瓨鍌ㄧ被鍒,灞炰簬鍔ㄦ佸瓨鍌ㄦ柟寮忋 鐢╯tatic淇グ鐨勪负闈欐佸彉閲,濡傛灉瀹氫箟鍦ㄥ嚱鏁板唴閮ㄧ殑,绉颁箣涓洪潤鎬佸眬閮ㄥ彉閲;濡傛灉瀹氫箟鍦ㄥ嚱鏁板閮,绉颁箣涓洪潤鎬佸閮ㄥ彉閲...
  • vc c++鐨 66涓叧閿瓧鐨勪腑鏂囧惈涔鏄粈涔?
    绛旓細struct(缁撴瀯)绫诲瀷,绫讳技浜巆lass鍏抽敭瀛,涓C璇█鍏煎(class鍏抽敭瀛楁槸涓嶄笌C璇█鍏煎鐨),鍙互瀹炵幇闈㈠悜瀵硅薄绋嬪簭璁捐47. switchswitch(杞崲)绫讳技浜巌f-else-if璇彞,鏄竴绉嶅鍒嗘灊璇彞銆傚畠鎻愪緵浜嗕竴绉嶇畝娲佺殑涔﹀啓,骞朵笖鑳藉鐢熸垚鏁堢巼鏇村ソ鐨勪唬鐮併備絾鏄,switch鍚庨潰鐨勫垽鏂彧鑳芥槸int(char涔熷彲浠,浣哻har鏈川涓婁篃鏄竴绉峣nt绫诲瀷)銆俿witch...
  • C璇█涓void鏄粈涔鎰忔
    绛旓細void a;杩欒璇彞缂栬瘧鏃朵細鍑洪敊锛屾彁绀衡渋llegal use of type 'void'鈥濄備笉杩囷紝鍗充娇void a鐨勭紪璇戜笉浼氬嚭閿欙紝瀹冧篃娌℃湁浠讳綍瀹為檯鎰忎箟銆2銆乿oid鐨勪娇鐢ㄨ鍒欙細瑙勫垯涓锛氬鏋滃嚱鏁版病鏈夎繑鍥炲硷紝閭d箞搴斿0鏄庝负void绫诲瀷 鍦C璇█涓锛屽嚒涓嶅姞杩斿洖鍊肩被鍨嬮檺瀹氱殑鍑芥暟锛屽氨浼氳缂栬瘧鍣ㄤ綔涓鸿繑鍥炴暣鍨嬪煎鐞嗐備絾鏄澶氱▼搴忓憳鍗磋...
  • 扩展阅读:扫一扫题目出答案 ... c语言中的37个关键字 ... c语言32个关键字 ... c语言37个关键词及意思 ... c++编程 ... c语言关键字一览表 ... 关键词大全 ... c99中37个关键字 ... c语言37个关键字的含义 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网