IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C/C++语言标准和函数无参数的表示方法 -> 正文阅读

[C++知识库]C/C++语言标准和函数无参数的表示方法

关于C和C++的标准,可以在http://www.open-std.org/这个网站找到。

C语言标准:

点开网站首页。

找到"WG14 - C",点开页面。

找到“The current C programming language standard (C11) ISO/IEC 9899 was adopted by ISO and IEC in 2011.”,点开连接。

找到“The latest publically available version of the C11 standard is the document WG14 N1570, dated 2011-04-12. This is a WG14 working paper, but it reflects what was to become the standard at the time of issue.”,这个N1570.pdf下载下来就是C11标准文档。

同一页面,下面还可以下载C99的标准文档,“The latest publicly available version of the C99 standard is the combined C99 + TC1 + TC2 + TC3, WG14 N1256,”

同一页面,还有个C99RationaleV5.10.pdf文档,“The rationale for the C99 standard is available.”。

C++标准:

回到网站首页。

找到“* WG21 - C++”,点开页面。

找到“* ISO/IEC 14882:2017 Programming Language C++ - draft”,点开页面。

找到“A draft for the 2020 edition is available in N4849.”,这个是最新版本,

找到“A draft for the 2011 edition is available in N3242.”,这就是C++11版本。

注意:中间的版本,可以在标准下载页面,找到“papers”,点开后,选择相应年份,下载相应版本。

上面拿到的只是一些草稿版本,如果要下载正式版,要去ISO官方网站,而且是要花钱的哦。是以瑞士法郎(CHF)标价,每个198,相当贵了。

C标准最新2018:

https://www.iso.org/standard/74528.html

C++标准最新2020:

https://www.iso.org/standard/79358.html

关于C语言标准的一些信息,还可以参考下面的链接:

https://www.iso-9899.info/wiki/The_Standard

关于C++语言标准,还可以参考网站:https://isocpp.org/

-------------------------------?

标准已经找到,那关于语言上的问题就可以参照标准来解决。

现在正好有个问题,关于:

int func( ) 和int func( void )有什么不同?

如果一个函数没有参数,是不写参数列表,还是写上void好呢?

我们先查一下C++11的标准:

“8 Declarators” -> "8.3.5 Functions" -> 第4点。

找到:“The parameter list (void) is equivalent to the empty parameter list.”。

那就是说,在C++里,这两种写法是没有区别的。

再查一下C11的标准:

“6. Language” -> "6.7 Declarations" -> "6.7.6.3 Function declarators (including prototypes)" -> 第10点。

10 The special case of an unnamed parameter of type void as the only item in the list?specifies that the function has no parameters.

这表明有void表示没有参数,没有void表示没有说明参数列表。

#include <stdio.h>


void func1( )

{

? ? printf("func1.\n");

}


void func2( void )

{

????printf("func2.\n");

}


int main( )

{

? ? func1();?

? ? func2();


? ? func1(1);

? ? func2(2); //?error: too many arguments to function ‘func2’


? ? return 0;

}

所以,如果参数位置不写,调用时可以使用任意参数列表,如果加上void,就表示没有参数,调用时不能传递参数。

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-28 08:51:02  更:2021-08-28 08:52:09 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/27 21:18:40-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计