C语言标准

1、概述

        C语言标准是由ANSI(美国国家标准协会)和ISO(国际标准化组织)共同制定的一种语言规范。标准经历过如下更新:

  • C89/C90标准
  • C99标准
  • C11标准
  • C17标准

2、C89/C90标准

(1)这是1989年正式发布的C语言标准,简称为C89或C90。这个标准定义了C语言的基本语法、数据类型、运算符、控制结构等核心特性。

3、C99标准

(1)在1999年,ISO对C语言进行了修订,发布了ISO9899:1999标准,简称为C99。这个标准增加了一些新的特性,例如支持长长整型(long long int)、无符号整数类型(unsigned int)、可变长度数组(VLA)等。同时,C99还强调了可移植性,要求编译器能够处理不同平台的差异。

4、C11标准

(1)C11标准:在2011年,ISO再次对C语言进行了修订,发布了ISO9899:2011标准,简称为C11。这个标准引入了一些新的特性,例如支持二进制字面量、线程局部存储(thread-local storage)、指定初始化器等。此外,C11还加强了对于并发编程的支持,提供了更好的线程同步机制。

5、C17标准

在2017年,ISO再次更新C语言标准,发布了ISO9899:2017标准,简称为C17。这个标准引入了一些新的特性,例如支持指定长度的数组、聚合类型(aggregate types)、通用初始化等。此外,C17还加强了对于嵌入式编程的支持,提供了更好的内存管理和异常处理机制。

6、总结

(1)需要注意的是,虽然C语言标准在不断更新,但是不同的编译器可能会有不同的支持程度和实现方式。因此,在实际开发中,需要参考具体的编译器文档和标准版本来使用合适的语言特性。

7、Keil中的C语言标准

(1)C89中,变量的定义必须放在作用域的开头,C99中,变量的定义可以放在任何地方。

(2)Keil中设置使用C99标准,如下图:

  • 勾选C99 Mode
  • 或者Misc Controls中添加--c99

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
C语言标准库是C语言提供的一套函数库集合,可以通过包含不同的头文件来调用这些库中的函数。标准库中包含了丰富的函数,用于处理输入输出、字符串操作、数学运算、内存管理、时间日期处理等各种功能。 其中,stdio.h是最常用的标准库之一,定义了一些常用的输入输出函数,比如printf和scanf,用于从控制台输入数据以及向控制台输出结果。此外,还有更多的I/O函数,比如文件的读写、格式化输入输出等。 string.h是另一个常用的标准库,提供了一系列对字符串进行操作的函数。例如,strlen函数用于计算字符串的长度,strcpy函数用于将一个字符串复制到另一个字符串中,strcat函数用于将一个字符串连接到另一个字符串的末尾。 math.h是用于数学运算的标准库,提供了各种数学函数,包括常见的数学运算、三角函数、指数和对数函数等。 stdlib.h是用于内存管理和一些常用函数的标准库。比如,malloc函数用于动态分配内存,free函数用于释放已分配的内存,atoi和atof函数用于将字符串转换成整数或浮点数。 time.h是用于时间和日期处理的标准库,包含了一些和时间相关的函数。比如,time函数用于获取当前的时间,ctime函数用于将时间转换成字符串表示。 除了以上几个常用的标准库外,C语言还提供了诸如ctype.h、assert.h、stdbool.h等其他标准库,用于字符处理、断言、布尔类型处理等。 总的来说,C语言标准库提供了很多常用功能的函数,可以帮助开发人员更快地实现各种功能,提高开发效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代码织梦师小猪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值