C11新增的七个关键字开头是大写还是小写?还是都行?

   更新日期:2024.04.18

这的确是c11增加的关键字,一定以下划线加大写字母开头

C99有如下

restrict inline _Complex _Imaginary _Bool

C11如下

_Alignas _Alignof _Atomic _Generic _Noreturn _Static_assert _Thread_local

为什么是这样书写的原因在于

C语言不同于Java等新生语言,

  1. 它并不能摒弃太多东西,而且要向前兼容

  2. C语言编译器简单,没有名字空间

如果不算模糊而且不可靠的经典C标准(白皮书标准),那么以C89标准为例

C语言规定

以两个下划线开头的标识符被保留,程序员不应当使用

以一个下划线紧接一个大写字母开头的标识符被保留,程序员不应当使用

以一个下划线紧接一个小写字母开头的标识符被作为文件链接作用域保留,程序员不应当使用

还有已知库函数类型保留

(比如str加小写字母开头被<string.h>保留)

所以为了不和已知冲突,或者尽量减少,用了这个办法

而像restrict和inline有其英文含义,使用的人也较少,也是委员会折衷的考虑吧



  • 13457204837 :C11新增的七个关键字开头是大写还是小写?还是都行?
    莘纨水1304 :答:这的确是c11增加的关键字,一定以下划线加大写字母开头 C99有如下 restrict inline _Complex _Imaginary _Bool C11如下 _Alignas _Alignof _Atomic _Generic _Noreturn _Static_assert _Thread_local 为什么是这样书写的原因在...
  • 13457204837 :C语言中有哪些关键字,功能是什么?
    莘纨水1304 :答:(1) char :声明字符型变量或函数 (2) double :声明双精度变量或函数 (3) enum :声明枚举类型 (4) float:声明浮点型变量或函数 (5) int: 声明整型变量或函数 (6) long :声明长整型变量或函数 (7) short :...
  • 13457204837 :C语言里面的预定义标识符,关键字有哪些啊,求解?
    莘纨水1304 :答:关键字是被系统定义过的,不能挪作他用.而预定义标识符有些是你只要不包含头文件,这个标识符就不会被定义,你就可以用作别的用处.如:sleep函数.这个函数你不包含头文件编译器会报错(至少vc++6.0是这样)这样你只需要定义...
  • 13457204837 :C语言的32个关键字是什么意思啊
    莘纨水1304 :答:char :字符型类型数据,属于整型数据的一种 int :整型数据,通常为编译器指定的机器字长 float :单精度浮点型数据,属于浮点数据的一种 double :双精度浮点型数据,属于浮点数据的一种 B 类型修饰关键字(4个)short ...
  • 13457204837 :c语言的语言组成
    莘纨水1304 :答:_Generic:提供重载的接口入口(C11标准新增)类型修饰关键字short:修饰int,短整型数据,可省略被修饰的int。(K&R时期引入)long:修饰int,长整型数据,可省略被修饰的int。(K&R时期引入)long long:修饰int,超长整型数据,可省略被修饰的int。
  • 13457204837 :C语言中的“void main()”是什么意思?
    莘纨水1304 :答:void main()表示函数无返回值,就是说在程序的结尾处不需要加上return 0。而return是在函数体中,用来返回特定值的。一个C程序中必须至少有一个函数,而且其中必须有一个并且仅有一个以main为名,这个函数称为主函数,主...
  • 13457204837 :机械自动化控制的语言!!!
    莘纨水1304 :答:_Imaginary:虚数,与复数基本类型相似,没有实部的纯虚数(C99标准新增)_Generic:提供重载的接口入口(C11标准新增)类型修饰关键字short:修饰int,短整型数据,可省略被修饰的int。(K&R时期引入)long:修饰int,长整型数据,可省略被修饰的int。
  • 13457204837 :c语言int()的作用是什么?
    莘纨水1304 :答:Int是将一个数值向下取整为最接近的整数的函数。为取整函数。意思是将被转换数直接截取整数部分,不进行四舍五入运算。例如:int(123.456);//取值为123 int(-123.456);//取值为124 int(1234.56);//取值为1234 ...
  • 13457204837 :跪求!一C语言答案!急需!输入一个一维整型数组,并找出数组元素中最大值...
    莘纨水1304 :答:i];iMin = i;}if (a[i]>max){ max = a[i];iMax = i;} }printf("值最小的元素为: %d,其下标为: %d \n", min,iMin);printf("值最大的元素为: %d,其下标为: %d \n", max,iMax);} 测试结果:...
  • 13457204837 :c语言如何判断一个数是几位数
    莘纨水1304 :答:c语言代码如下:include<stdio.h> int main(){double sum=0,x=1;while(sum<5){sum+=(1/x);x++;} printf("出满足不等式1+1/2+1/3+...+1/n≥5的最小n值为%.0lf\n",x-1);return 0;} ...
  • 相关链接

    欢迎反馈与建议,请联系电邮
    2024 © 视觉网