ANSI C和ISO C有什么区别?

16

我知道C语言有ANSI标准和ISO标准,这两个标准有什么区别吗?如果有,是什么?如果没有区别,那么为什么需要两个标准?

2个回答

12
1990年,ANSI C标准(稍作修改)被国际标准化组织采纳为ISO / IEC 9899:1990。此版本有时称为C90。因此,“C89”和“C90”这两个术语基本上指的是相同的语言。 来源对于C99的情况也类似但是相反。这个问题也有一个C FAQ entry。 存在两个标准的原因很简单:ANSI是北美标准机构,而ISO是一个国际机构。

3
然后加上时间线是相反的,C99在1999年成为ISO标准,在2000年成为ANSI标准。谈论C标准时需要注意的重要事项是年份。 :)通常情况下,“ANSI C”或“ISO C”指的是C89;当人们指的是C99时,他们通常会这样说。 - Fabian Giesen

6

除了新版本将在ISO之前被批准,然后再由国家标准机构如ANSI批准外,它们是相同的。然而,常见的错误用法是指"ANSI C"是指ANSI于1989年标准化的原始语言,而"ISO C"、"ISO C99"或简单地说"C99"是指ISO于1999年采用的当前标准。


(现在我们已经有了C11) - Antti Haapala -- Слава Україні
ANSI认证是否总是“镜像”ISO认证?也就是说,ANSI认证与ISO认证完全相同吗? - Dean P

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接