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

   更新日期:2024.05.01

这的确是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有其英文含义,使用的人也较少,也是委员会折衷的考虑吧



  • 17824258154 :C11新增的七个关键字开头是大写还是小写?还是都行?
    熊荀邹2117 :答:这的确是c11增加的关键字,一定以下划线加大写字母开头 C99有如下 restrict inline _Complex _Imaginary _Bool C11如下 _Alignas _Alignof _Atomic _Generic _Noreturn _Static_assert _Thread_local 为什么是这样书写的原因在...
  • 17824258154 :C语言中有哪些关键字,功能是什么?
    熊荀邹2117 :答:(1) char :声明字符型变量或函数 (2) double :声明双精度变量或函数 (3) enum :声明枚举类型 (4) float:声明浮点型变量或函数 (5) int: 声明整型变量或函数 (6) long :声明长整型变量或函数 (7) short :...
  • 17824258154 :C语言里面的预定义标识符,关键字有哪些啊,求解?
    熊荀邹2117 :答:关键字是被系统定义过的,不能挪作他用.而预定义标识符有些是你只要不包含头文件,这个标识符就不会被定义,你就可以用作别的用处.如:sleep函数.这个函数你不包含头文件编译器会报错(至少vc++6.0是这样)这样你只需要定义...
  • 17824258154 :C语言入门阶段02:C语言关键字
    熊荀邹2117 :答:C99和C11的扩展关键字进一步丰富了编程手段,如_complex表示复数类型变量,_Atomic确保并发安全,_Static_assert则在编译阶段检测表达式正确性。通过这些工具,C语言的灵活性和性能得以提升。深入掌握这些C语言的关键标识符,将助...
  • 17824258154 :C语言的32个关键字是什么意思啊
    熊荀邹2117 :答:根据关键字的作用,可以将关键字分为数据类型关键字和流程控制关键字两大类。1 数据类型关键字 A基本数据类型(5个)void :声明函数无返回值或无参数,声明无类型指针,显式丢弃运算结果 char :字符型类型数据,属于整型...
  • 17824258154 :C语言中的“void main()”是什么意思?
    熊荀邹2117 :答:void main()表示函数无返回值,就是说在程序的结尾处不需要加上return 0。而return是在函数体中,用来返回特定值的。一个C程序中必须至少有一个函数,而且其中必须有一个并且仅有一个以main为名,这个函数称为主函数,主...
  • 17824258154 :c语言的语言组成
    熊荀邹2117 :答:_Imaginary:虚数,与复数基本类型相似,没有实部的纯虚数(C99标准新增)_Generic:提供重载的接口入口(C11标准新增)类型修饰关键字short:修饰int,短整型数据,可省略被修饰的int。(K&R时期引入)long:修饰int,长整型数据,可省略被修饰的int。
  • 17824258154 :C语言是什么意思?
    熊荀邹2117 :答:目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。C语言是一门面向...
  • 17824258154 :机械自动化控制的语言!!!
    熊荀邹2117 :答:_Imaginary:虚数,与复数基本类型相似,没有实部的纯虚数(C99标准新增)_Generic:提供重载的接口入口(C11标准新增)类型修饰关键字short:修饰int,短整型数据,可省略被修饰的int。(K&R时期引入)long:修饰int,长整型数据,可省略被修饰的int。
  • 17824258154 :C语言-删除字符串中指定的字符
    熊荀邹2117 :答:1.基本方法是,编写函数fun:deletechar()。这个函数需要接受两个参数的传入,一个为该字符串str,另一个为想删除的字符c。通过对整个字符串的逐个遍历,凡是检测到字符为c,则删除此字符。具体实现代码如下:2.在主函数,...
  • 相关链接

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