PageSourceSearch

https://c-cpp.com/c/language/history.html

html c-cpp.com collected 2026-10-05 22:12:08 UTC 32,658 bytes, 482 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3<head>
4  
5  <title>C 的历史_C语言中文网</title>
6<meta name="keywords" content="C 的历史,C语言">
7 
8  <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0" />
9<link rel="shortcut icon" href="/icon.png" type="image/x-icon" />
10<link href="/Application/Home/View/Public/css/bootstrap.min.css" rel="stylesheet">
11<link href="/Application/Home/View/Public/css/style.css?1791238328" rel="stylesheet">
12</head>
13<body>
14
15
16
17<div id="header">
18	<div class="row">
19	<div class="col-md-3">
20	<div class="logo"><a href="/">C-CPP.COM</a></div>
21	</div>
22	<div class="col-md-9">
23		<ul>
24			<li ><a href="/">首页</a></li>
25			<li class="active"><a href="/c">C语言</a></li>
26			<li ><a href="/cpp">C++</a></li>
27			<li><a href="https://mi.aliyun.com/domain-detail?domain=c-cpp.com" target="_blank">网站转手</a></li>
28		</ul>
29	</div>
30	</div>
31</div>
32
33
34	
35<div class="row" id="main">
36	<div class="col-md-3"  id="left">
37<h4><a href="/c">C 参考手册</a></h4>
38<ul>
39	<li class=" border"">
40
41		<a href="/c/language">C 语言</a></li><li class="active" ">
42
43		<a href="/c/language/history">&nbsp;&nbsp;&nbsp;C 的历史</a></li><li class=" ">
44
45		<a href="/c/language/basic_concepts">&nbsp;&nbsp;&nbsp;基本概念</a></li><li class=" ">
46
47		<a href="/c/language/expressions">&nbsp;&nbsp;&nbsp;表达式</a></li><li class=" ">
48
49		<a href="/c/language/declarations">&nbsp;&nbsp;&nbsp;声明</a></li><li class=" ">
50
51		<a href="/c/language/initialization">&nbsp;&nbsp;&nbsp;初始化</a></li><li class=" ">
52
53		<a href="/c/language/functions">&nbsp;&nbsp;&nbsp;函数</a></li><li class=" ">
54
55		<a href="/c/language/statements">&nbsp;&nbsp;&nbsp;语句</a></li><li class=" ">
56
57		<a href="/c/language/_Static_assert">&nbsp;&nbsp;&nbsp;静态断言</a></li><li class=" ">
58
59		<a href="/c/language/character_constant">&nbsp;&nbsp;&nbsp;字符常量</a></li><li class=" ">
60
61		<a href="/c/language/function_declaration">&nbsp;&nbsp;&nbsp;函数声明</a></li><li class=" ">
62
63		<a href="/c/language/function_definition">&nbsp;&nbsp;&nbsp;函数定义</a></li><li class=" ">
64
65		<a href="/c/language/escape">&nbsp;&nbsp;&nbsp;转义序列</a></li><li class=" ">
66
67		<a href="/c/language/translation_phases">&nbsp;&nbsp;&nbsp;翻译阶段</a></li><li class=" ">
68
69		<a href="/c/language/identifier">&nbsp;&nbsp;&nbsp;标识符</a></li><li class=" ">
70
71		<a href="/c/language/scope">&nbsp;&nbsp;&nbsp;作用域</a></li><li class=" ">
72
73		<a href="/c/language/lifetime">&nbsp;&nbsp;&nbsp;生存期</a></li><li class=" ">
74
75		<a href="/c/language/name_space">&nbsp;&nbsp;&nbsp;查找与命名空间</a></li><li class=" ">
76
77		<a href="/c/language/ascii">&nbsp;&nbsp;&nbsp;ASCII 码表</a></li><li class=" ">
78
79		<a href="/c/language/types">&nbsp;&nbsp;&nbsp;类型</a></li><li class=" ">
80
81		<a href="/c/language/conformance">&nbsp;&nbsp;&nbsp;遵从性</a></li><li class=" ">
82
83		<a href="/c/language/arithmetic_types">&nbsp;&nbsp;&nbsp;算术类型</a></li><li class=" ">
84
85		<a href="/c/language/restrict">&nbsp;&nbsp;&nbsp;restrict 类型限定符</a></li><li class=" ">
86
87		<a href="/c/language/type">&nbsp;&nbsp;&nbsp;类型</a></li><li class=" ">
88
89		<a href="/c/language/object">&nbsp;&nbsp;&nbsp;对象与对齐</a></li><li class=" ">
90
91		<a href="/c/language/main_function">&nbsp;&nbsp;&nbsp;主函数</a></li><li class=" ">
92
93		<a href="/c/language/behavior">&nbsp;&nbsp;&nbsp;未定义行为</a></li><li class=" ">
94
95		<a href="/c/language/memory_model">&nbsp;&nbsp;&nbsp;内存模型</a></li><li class=" ">
96
97		<a href="/c/language/if">&nbsp;&nbsp;&nbsp;if 语句</a></li><li class=" ">
98
99		<a href="/c/language/switch">&nbsp;&nbsp;&nbsp;switch 语句</a></li><li class=" ">
100
101		<a href="/c/language/for">&nbsp;&nbsp;&nbsp;for 循环</a></li><li class=" ">
102
103		<a href="/c/language/while">&nbsp;&nbsp;&nbsp;while 循环</a></li><li class=" ">
104
105		<a href="/c/language/do">&nbsp;&nbsp;&nbsp;do-while 循环</a></li><li class=" ">
106
107		<a href="/c/language/continue">&nbsp;&nbsp;&nbsp;continue语句</a></li><li class=" ">
108
109		<a href="/c/language/break">&nbsp;&nbsp;&nbsp;break 语句</a></li><li class=" ">
110
111		<a href="/c/language/goto">&nbsp;&nbsp;&nbsp;goto语句</a></li><li class=" ">
112
113		<a href="/c/language/return">&nbsp;&nbsp;&nbsp;return 语句</a></li><li class=" ">
114
115		<a href="/c/language/value_category">&nbsp;&nbsp;&nbsp;值类别</a></li><li class=" ">
116
117		<a href="/c/language/eval_order">&nbsp;&nbsp;&nbsp;求值顺序</a></li><li class=" ">
118
119		<a href="/c/language/integer_constant">&nbsp;&nbsp;&nbsp;整数常量</a></li><li class=" ">
120
121		<a href="/c/language/floating_constant">&nbsp;&nbsp;&nbsp;浮点常量</a></li><li class=" ">
122
123		<a href="/c/language/string_literal">&nbsp;&nbsp;&nbsp;字符串字面量</a></li><li class=" ">
124
125		<a href="/c/language/compound_literal">&nbsp;&nbsp;&nbsp;复合字面量</a></li><li class=" ">
126
127		<a href="/c/language/constant_expression">&nbsp;&nbsp;&nbsp;常量表达式</a></li><li class=" ">
128
129		<a href="/c/language/conversion">&nbsp;&nbsp;&nbsp;隐式转换</a></li><li class=" ">
130
131		<a href="/c/language/operator_member_access">&nbsp;&nbsp;&nbsp;成员访问运算符</a></li><li class=" ">
132
133		<a href="/c/language/operator_logical">&nbsp;&nbsp;&nbsp;逻辑运算符</a></li><li class=" ">
134
135		<a href="/c/language/operator_comparison">&nbsp;&nbsp;&nbsp;比较运算符</a></li><li class=" ">
136
137		<a href="/c/language/operator_arithmetic">&nbsp;&nbsp;&nbsp;算术运算符</a></li><li class=" ">
138
139		<a href="/c/language/operator_assignment">&nbsp;&nbsp;&nbsp;赋值运算符</a></li><li class=" ">
140
141		<a href="/c/language/operator_incdec">&nbsp;&nbsp;&nbsp;自增/自减运算符</a></li><li class=" ">
142
143		<a href="/c/language/operator_other">&nbsp;&nbsp;&nbsp;其他运算符</a></li><li class=" ">
144
145		<a href="/c/language/sizeof">&nbsp;&nbsp;&nbsp;sizeof 运算符</a></li><li class=" ">
146
147		<a href="/c/language/_Alignof">&nbsp;&nbsp;&nbsp;_Alignof 运算符</a></li><li class=" ">
148
149		<a href="/c/language/cast">&nbsp;&nbsp;&nbsp;转型运算符</a></li><li class=" ">
150
151		<a href="/c/language/operator_precedence">&nbsp;&nbsp;&nbsp;C 运算符优先级</a></li><li class=" ">
152
153		<a href="/c/language/generic">&nbsp;&nbsp;&nbsp;泛型选择</a></li><li class=" ">
154
155		<a href="/c/language/scalar_initialization">&nbsp;&nbsp;&nbsp;标量初始化</a></li><li class=" ">
156
157		<a href="/c/language/array_initialization">&nbsp;&nbsp;&nbsp;数组初始化</a></li><li class=" ">
158
159		<a href="/c/language/struct_initialization">&nbsp;&nbsp;&nbsp;结构体与联合体初始化</a></li><li class=" ">
160
161		<a href="/c/language/pointer">&nbsp;&nbsp;&nbsp;指针声明</a></li><li class=" ">
162
163		<a href="/c/language/array">&nbsp;&nbsp;&nbsp;数组声明</a></li><li class=" ">
164
165		<a href="/c/language/enum">&nbsp;&nbsp;&nbsp;枚举</a></li><li class=" ">
166
167		<a href="/c/language/storage_duration">&nbsp;&nbsp;&nbsp;存储类指定符</a></li><li class=" ">
168
169		<a href="/c/language/const">&nbsp;&nbsp;&nbsp;const 类型限定符</a></li><li class=" ">
170
171		<a href="/c/language/volatile">&nbsp;&nbsp;&nbsp;volatile 类型限定符</a></li><li class=" ">
172
173		<a href="/c/language/struct">&nbsp;&nbsp;&nbsp;结构体声明</a></li><li class=" ">
174
175		<a href="/c/language/union">&nbsp;&nbsp;&nbsp;联合体声明</a></li><li class=" ">
176
177		<a href="/c/language/bit_field">&nbsp;&nbsp;&nbsp;位域</a></li><li class=" ">
178
179		<a href="/c/language/_Alignas">&nbsp;&nbsp;&nbsp;_Alignas</a></li><li class=" ">
180
181		<a href="/c/language/typedef">&nbsp;&nbsp;&nbsp;typedef 声明</a></li><li class=" ">
182
183		<a href="/c/language/atomic">&nbsp;&nbsp;&nbsp;原子类型</a></li><li class=" ">
184
185		<a href="/c/language/extern">&nbsp;&nbsp;&nbsp;外部及试探性定义</a></li><li class=" ">
186
187		<a href="/c/language/inline">&nbsp;&nbsp;&nbsp;inline 函数指定符</a></li><li class=" ">
188
189		<a href="/c/language/_Noreturn">&nbsp;&nbsp;&nbsp;_Noreturn 函数指定符</a></li><li class=" ">
190
191		<a href="/c/language/variadic">&nbsp;&nbsp;&nbsp;变长参数</a></li><li class=" ">
192
193		<a href="/c/language/asm">&nbsp;&nbsp;&nbsp;内联汇编</a></li><li class=" ">
194
195		<a href="/c/language/analyzability">&nbsp;&nbsp;&nbsp;可分析性</a></li><li class=" ">
196
197		<a href="/c/language/operator_alternative">&nbsp;&nbsp;&nbsp;替用运算符及记号</a></li><li class=" border"">
198
199		<a href="/c/keyword">C 关键词</a></li><li class=" border"">
200
201		<a href="/c/preprocessor">预处理器</a></li><li class=" border"">
202
203		<a href="/c/header">C 标准库头文件</a></li><li class=" border"">
204
205		<a href="/c/types">类型支持</a></li><li class=" border"">
206
207		<a href="/c/program">程序支持工具</a></li><li class=" border"">
208
209		<a href="/c/variadic">变参数函数</a></li><li class=" border"">
210
211		<a href="/c/error">错误处理</a></li><li class=" border"">
212
213		<a href="/c/memory">动态内存管理</a></li><li class=" border"">
214
215		<a href="/c/chrono">日期和时间工具</a></li><li class=" border"">
216
217		<a href="/c/string">字符串库</a></li><li class=" border"">
218
219		<a href="/c/algorithm">算法</a></li><li class=" border"">
220
221		<a href="/c/numeric">数值</a></li><li class=" border"">
222
223		<a href="/c/io">文件输入/输出</a></li><li class=" border"">
224
225		<a href="/c/locale">本地化支持</a></li><li class=" border"">
226
227		<a href="/c/atomic">原子操作库</a></li><li class=" border"">
228
229		<a href="/c/thread">线程支持库</a></li><li class=" border"">
230
231		<a href="/c/experimental">实验性 C 标准库</a></li><li class=" border"">
232
233		<a href="/c/links">有用的资源</a></li><li class=" border"">
234
235		<a href="/c/symbol_index">符号索引</a></li><li class=" border"">
236
237		<a href="/c/comment">注释</a></li></ul>	
238
239</div>	
240	<div class="col-md-9">
241	
242<div id="location">
243<p>
244位置:<a href="/">首页</a> >
245<a href="/c">C 参考手册</a> ><a href="/c/language">C 语言</a> > C 的历史</p>
246</div>
247	<div class="page-header">
248		<h1>C 的历史</h1>
249	</div>
250	
251		<div class="con">
252			<div id="mw-content-text" lang="zh" dir="ltr" class="mw-content-ltr">
253<h2><span class="mw-headline" id=".E6.97.A9.E6.9C.9F_C">早期 C</span></h2>
254<ul><li> 1969 :基于 BCPL 创建 B ,以作为 Unix 的系统程序语言替代 PDP-7 汇编器
255</li></ul>
256<dl><dd><ul><li> 增加运算符 ++ 、 -- 、复合赋值,保持为类 BCPL 的无类型语言
257</li></ul>
258</dd></dl>
259<ul><li> 1971 :于将 B 移植到 PDP-11 时创建 NB (新“ B ”)
260</li></ul>
261<dl><dd><ul><li> 类型( int 、 char 、数组与指针)、数组到指针转换、到机器码的编译
262</li></ul>
263</dd></dl>
264<ul><li> 1972 :语言更名为 C
265</li></ul>
266<dl><dd><ul><li> 结构体、运算符 &amp;&amp; 及 || 、预处理器、可移植 I/O
267</li></ul>
268</dd></dl>
269<ul><li> 1973 :以 C 重写
270</li></ul>
271<dl><dd><ul><li> 无符号整数、 long 、联合体、枚举、增强的类型安全
272</li></ul>
273</dd></dl>
274<ul><li> 1978 : The C Programming Language ,第1版
275</li></ul>
276<h2><span class="mw-headline" id=".E6.A0.87.E5.87.86_C">标准 C</span></h2>
277<ul><li> 1983 : ANSI 建立 X3J11 委员会
278</li><li> 1988 : The C Programming Language ,第2版
279</li><li> 1989 : <code><b>C89</b></code> ,ANSI C 标准出版
280</li></ul>
281<ol><li> 代码化的既存实践
282</li><li> 新特性 :volatile 、 enum 、有符号整数 、 void 、本地环境
283</li><li> 来自 C++ : const 、函数原型
284</li></ol>
285<ul><li> 1990 : <code><b>C90</b></code>  ,ANSI C 标准被接纳为 ISO/IEC 9899-1990
286</li><li> 1995 : <code><b>C95</b></code> ( ISO/IEC 9899 AM1 )(<a rel="nofollow" class="external text" href="http://infostore.saiglobal.com/store/Detail
286s.aspx?DocN=isoc000767513">在线商店</a>)
287</li></ul>
288<ol><li> 极大扩充了宽和多字节字符支持( wctype.h 、 wchar.h 、对流 I/O 的添加和更改等)
289</li><li> 双标符、 iso646.h
290</li></ol>
291<ul><li> 1995 :技术勘误 1( ISO/IEC 9899 TCOR1 )
292</li></ul>
293<dl><dd><ul><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/tc1.htm">44 个小更改</a>
294</li></ul>
295</dd></dl>
296<ul><li> 1996 :技术勘误 2( ISO/IEC 9899 TCOR2 )
297</li></ul>
298<dl><dd><ul><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/tc2.htm">24 个小更改</a>
299</li></ul>
300</dd></dl>
301<ul><li> 1999 :<code><b>C99</b></code> ( ISO/IEC 9899:1999 )
302</li></ul>
303<ol><li> 新特性: _Bool 、 long long 、 stdint.h 、 inttypes.h 、 restrict 、复合字面量、变长度数组、伸缩数组成员、指代初始化器、 fenv.h 、变参数宏、复数、 __func__ 、十六进制浮点格式( %a )、 lconv 的货币格式化、  isblank 、窄与宽字符串字面量的连接、枚举的尾逗号、类函数宏的空参数、 STDC_* pragma 、 va_copy 、 tmpnam 的空返回、 setvbuf 中的空指针、 printf 的 hh 与 ll 长度指定符、 snprintf 、 _Exit 、 tgmath.h 、仿 POSIX strftime 指定符
304</li><li>
304 来自 C++ : inline 、声明与代码混合、 for 循环的 init 子句中的声明、 <code><b>//</b></code> 注释、源代码中的通用字符名
305</li><li> 移除隐式函数声明和隐式 int
306</li></ol>
307<ul><li> 2001 :技术勘误 1 ( ISO/IEC 9899:1999/Cor.1:2001(E) )
308</li></ul>
309<dl><dd><ul><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/9899tc1/">修正 11 个缺陷</a>
310</li></ul>
311</dd></dl>
312<ul><li> 2004 :技术勘误 2 ( ISO/IEC 9899:1999/Cor.2:2004(E) )
313</li><li> 2004 :Unicode TR( ISO/IEC TR 19769:2004 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=33907">ISO商店</a>)(<a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1040.pdf">2013-11-07 方案</a>)
314</li><li> 2007 :技术勘误 3 ( ISO/IEC 9899:1999/Cor.3:2007(E) )( <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf">2007-09-07方案</a>)
315</li></ul>
316<dl><dd><ul><li> 弃用 <span class="t-lc"><a href="../io/gets.html" title="c/io/gets">gets</a></span>
317</li></ul>
318</dd></dl>
319<ul><li> 2007 :边界检查接口 TR( ISO/IEC TR 24731-1:2007 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/catalogue_detail.htm?csnumber=38841">ISO 商店</a>)( <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1225.pdf">2007-03-28 方案</a>)
320</li><li> 2008 :嵌入式 TR ( ISO/IEC TR 18037:2008 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/catalogue_detail.htm?csnumber=51126">ISO商店</a>)( <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1021.pdf">2003-09-24 方案</a>)
321</li><li> 2009 :十进制浮点数 TR( ISO/IEC TR 24732:2009 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/catalogue_detail.htm?csnumber=38842">ISO 商店</a>)( <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1241.pdf">2007-07-05 方案</a>)
322</li><li> 2009 :特殊数学函数 TR( ISO/IEC TR 24747:2009 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/catalogue_detail.htm?csnumber=38857">ISO 商店</a>)(<a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1182.pdf">2006-08-02 方案</a>)
323</li><li> 2010 :动态分配函数 TR( ISO/IEC TR 24731-2:2010 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/catalogue_detail.htm?csnumber=51678">ISO 商店</a>)(<a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1248.pdf">2007-08-15 方案</a>)
324</li><li> 2011 : <code><b>C11</b></code> ( ISO/IEC 9899:2011 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=57853">ISO 商店</a>)( <a rel="nofollow" class="external text" href="http://webstore.ansi.org/RecordDetail.aspx?sku=INCITS%2fISO%2fIEC+9899-2012#.UGCvLIHyaHM">ANSI 商店</a>)(<a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf">2011-04-12 方案</a>)
325</li></ul>
326<ol><li> 具线程的内存模型 、 stdatomic.h 、 threads.h 、泛型函数、 _Alignas/_Alignof 、 _Noreturn 、 _Static_assert 、可分析性扩展、对复数和虚数类型的扩展、匿名结构体与联合体、独占文件打开模式、 quick_exit
327</li><li> 移除 <span class="t-lc"><a href="../io/gets.html" title="c/io/gets">gets</a></span>
328</li><li> 来自边界检查接口 TR :边界检查接口
329</li><li> 来自 Unicode TR : char16_t 、 char32_t ,及 uchar.h
330</li></ol>
331<ul><li> 2012 :技术勘误 1 ( ISO/IEC 9899:2011/Cor 1:2012 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=61717">ISO 商店</a>)
332</li></ul>
333<dl><dd><ul><li> 修正 <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_411">DR 411</a>
334</li></ul>
335</dd></dl>
336<ul><li> 2013 :安全代码规则 TS ( ISO/IEC TS 17961:2013 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/catalogue_detail.htm?csnumber=61134">ISO 商店</a>)( <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1624.pdf">2012-12-26</a> 方案)
337</li><li> 2014 :FP TS 部分 1 :二进制浮点算术( ISO/IEC TS 18661-1:2014 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/catalogue_detail.htm?csnumber=63146">ISO 商店</a>)( <a rel="nofollow" class="external text" href="http://www.open-std.org/JTC1/sc22/wg14/www/docs/n1778.pdf">2013 方案</a>)
338</li></ul>
339<ol><li> 提供对 C11 的更改(主要对附录 F ),以覆盖所有基本要求及一些 IEC 60559:2
339011 的推荐( C11 构建于 IEC 60559:1989 )
340</li></ol>
341<ul><li> 2015 :FP TS 部分 2 :十进制浮点算术( ISO/IEC TS 18661-2:2015 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/home/store/catalogue_ics/catalogue_detail_ics.htm?csnumber=68882">ISO 商店</a>) ( <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1912.pdf">2015 方案</a>)
342</li></ul>
343<ol><li> 提供对 C11 的更改,以支持所有要求,加上一些 IEC 60559:2011 对十进制浮点算术的基本推荐。它替代了 ISO/IEC TR 24732:2009 。
344</li></ol>
345<ul><li> 2015 :FP TS 部分 3 :交换及扩展类型( ISO/IEC TS 18661-3:2015 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=65615">ISO 商店</a>)( <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1945.pdf">2015 方案</a>)
346</li></ul>
347<ol><li> 提供对C11的更改,以支持IEC 60559:2011对扩展浮点格式及交换格式的推荐,包括算术和非算术。
348</li></ol>
349<ul><li> 2015 :FP TS 部分 4 :补充的函数( ISO/IEC TS 18661-4:2015 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=65616">ISO 商店</a>)( <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1950.pdf">2015 方案</a>)
350</li></ul>
351<ol><li> 提供对 C11 的更改,以支持所有 IEC 60559:2011 推荐的数学运算,包括 π 单位的三角函数、平方根倒数、复利等。
352</li></ol>
353<ul><li> 2016 :FP TS 部分 5 :补充的属性( ISO/IEC TS 18661-5:2016 )( <a rel="nofollow" class="external text" href="http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=65617">ISO 商店</a>)( <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2004.pdf">2016 方案</a>)
354</li></ul>
355<ol><li> 提供对 C11 的更改,以支持所有 IEC 60559:2011 推荐的补充属性(求值模型、异常处理、可再现性等)
356</li></ol>
357<ul><li> 2018: <code><b>C17</b></code> ( ISO/IEC 9899:2018 )( <a rel="nofollow" class="external text" href="https://www.iso.org/standard/74528.html">ISO 商店</a>)(<a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/abq/c17_updated_proposed_fdis.pdf">最终方案</a>)。
358</li></ul>
359<dl><dd>包含弃用 <a href="../atomic/ATOMIC_VAR_INIT.html" title="c/atomic/ATOMIC VAR INIT"><tt>ATOMIC_VAR_INIT</tt></a> 和对下列缺陷报告的修正:
360</dd></dl>
361<div style="margin-left:0px">
362<table class="table table-striped table-bordered">
363
364<tr>
365<th style="background: #F0F2F5; font-size:87%; padding:0.2em 0.3em; text-align:center;"> <span style="font-size:115%">C17 中修正的缺陷报告( 54 个缺陷)</span>
366</th></tr>
367<tr>
368<td style="border: solid 1px silver; padding: 8px; background: white;">
369<div class="div-col columns column-count column-count-6" style="-moz-column-count: 6; -webkit-column-count: 6; column-count: 6;">
370<ul><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_400">DR 400</a>
371</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_401">DR 401</a>
372</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_402">DR 402</a>
373</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_403">DR 403</a>
374</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_404">DR 404</a>
375</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_405">DR 405</a>
376</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_406">DR 406</a>
377</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_407">DR 407</a>
378</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_410">DR 410</a>
379</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_412">DR 412</a>
380</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_414">DR 414</a>
381</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_415">DR 415</a>
382</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_416">DR 416</a>
383</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_417">DR 417</a>
384</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_419">DR 419</a>
385</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_423">DR 423</a>
386</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_426">DR 426</a>
387</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_428">DR 428</a>
388</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_429">DR 429</a>
389</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_430">DR 430</a>
390</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_431">DR 431</a>
391</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_433">DR 433</a>
392</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_434">DR 434</a>
393</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_436">DR 436</a>
394</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_437">DR 437</a>
395</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_438">DR 438</a>
396</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_439">DR 439</a>
397</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_441">DR 441</a>
398</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_444">
398DR 444</a>
399</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_445">DR 445</a>
400</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_447">DR 447</a>
401</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_448">DR 448</a>
402</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_450">DR 450</a>
403</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_452">DR 452</a>
404</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_453">DR 453</a>
405</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_457">DR 457</a>
406</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_458">DR 458</a>
407</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_459">DR 459</a>
408</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_460">DR 460</a>
409</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_462">DR 462</a>
410</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_464">DR 464</a>
411</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_465">DR 465</a>
412</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_468">DR 468</a>
413</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_470">DR 470</a>
414</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_471">DR 471</a>
415</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_472">DR 472</a>
416</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_473">DR 473</a>
417</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_475">DR 475</a>
418</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_477">DR 477</a>
419</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_480">DR 480</a>
420</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_481">DR 481</a>
421</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_485">DR 485</a>
422</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_487">DR 487</a>
423</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_491">DR 491</a>
424</li></ul>
425</div>
426</td></tr></table></div>
427<h3><span class="mw-headline" id=".E6.9C.AA.E6.9D.A5.E5.8F.91.E5.B1.95">未来发展</span></h3>
428<ul><li> 并行 TS (方案 <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2017.pdf">n2017</a> 2016-03-10 )
429</li><li> 事务性内存 TS (方案 <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1961.pdf">n1961</a> 2015-09-23 )
430</li><li> <code><b>C2x</b></code> (方案 <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2479.pdf">n2479</a> 2020-02-05 )下个主要 C 语言标准版本
431</li></ul>
432<ol><li> 来自 TS (语言):十进制浮点类型
433</li><li> 来自 C++ (语言):单参数 <a href="_Static_assert.html" title="c/language/ Static assert"><code>_Static_assert</code></a> 、<a href="" class="new" title="c/language/attributes(页面不存在)">属性</a>、 <span class="t-c"><span class="mw-geshi c source-c">u8</span></span> <a href="character_constant.html" title="c/language/character constant">字符常量</a>、移除旧式<a href="function_declaration.html" title="c/language/function declaration">函数声明</a>与<a href="function_definition.html" title="c/language/function definition">函数定义</a>
434</li><li> 来自 TS (库):扩展的二进制浮点算术、十进制浮点算术
435</li><li> 来自 POSIX (库): <a href="" class="new" title="c/string/byte/memccpy(页面不存在)"><tt>memccpy()</tt></a> 、 <a href="" class="new" title="c/string/byte/strdup(页面不存在)"><tt>strdup()</tt></a> 、 <a href="" class="new" title="c/string/byte/strndup(页面不存在)"><tt>strndup()</tt></a> 、 <a href="../chrono/asctime.html" title="c/chrono/asctime"><tt>asctime_r()</tt></a> 、 <a href="../chrono/ctime.html" title="c/chrono/ctime"><tt>ctime_r()</tt></a> 、 <a href="../chrono/gmtime.html" title="c/chrono/gmtime"><tt>gmtime_r()</tt></a> 、 <a href="../chrono/localtime.html" title="c/chrono/localtime"><tt>localtime_r()</tt></a>
436</li><li> 未授予 DR 状态的问题列表: <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2297.htm">n2297 (2018-09-24)</a>
437</li><li> C11 后缺陷报告列表(包含为 C2x 安排者) <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2396.htm">n2396 (2019-04)</a>
438</li></ol>
439<h3><span class="mw-headline" id=".E5.8F.82.E9.98.85">参阅</span></h3>
440<table class="table table-striped table-bordered">
441
442</table>
443<h3><span class="mw-headline" id=".E5.BC.95.E7.94.A8">引用</span></h3>
444<ul><li> <a rel="nofollow" class="external text" href="https://www.bell-labs.com/usr/dmr/www/chist.html">
444C 语言的发展</a> Dennis M. Ritchie
445</li><li> <a rel="nofollow" class="external text" href="http://www.open-std.org/jtc1/sc22/wg14/www/C99RationaleV5.10.pdf">C99 标准基本原理</a>
446</li></ul>
447
448<!-- 
449NewPP limit report
450Preprocessor visited node count: 1026/1000000
451Preprocessor generated node count: 4318/1000000
452Post‐expand include size: 22603/2097152 bytes
453Template argument size: 2697/2097152 bytes
454Highest expansion depth: 13/40
455Expensive parser function count: 0/100
456-->
457
458<!-- Saved in parser cache with key mwiki1-mwiki_zh_:pcache:idhash:1070-0!*!0!!zh!*!zh!* and timestamp 20200216161912 -->
459</div>			
460		</div>
461	</div>
462</div>	
463	  
464     <footer class="footer">  
465    <div class="container">
466        <p><a href="/">C语言</a> | <a href="/">C++中文网</a></p>
467    </div>
468</footer>
469<script>
470var _hmt = _hmt || [];
471(function() {
472  var hm = document.createElement("script");
473  hm.src = "https://hm.baidu.com/hm.js?b6bd75d4c3a6f21bff2660b4e8ed3ebe";
474  var s = document.getElementsByTagName("script")[0]; 
475  s.parentNode.insertBefore(hm, s);
476})();
477</script>
477
478
479<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-6117966252207595"
480     crossorigin="anonymous"></script>
480
481</body>
482</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.