64得票8回答
有没有任何一个C库在GNU/Linux上实现了C11线程?

关于C11和C11线程有很多问题,但我没有在任何地方看到一个明确的答案: 是否有任何的C库实现了可在类GNU/Linux操作系统上使用的C11线程接口?例如,提供“可选的”<threads.h>和线程支持库,如C11标准第376页附近的thrd_create()。 理想情况下,...

59得票6回答
在C11中,&((struct name *)NULL -> b)会导致未定义的行为吗?

示例代码:struct name { int a, b; }; int main() { &(((struct name *)NULL)->b); } 这会导致未定义的行为吗?我们可以辩论它是否“取消引用null”,但是C11没有定义术语“取消引用”。 6.5....

47得票2回答
为什么C++11不支持匿名结构体,而C11支持?

C11支持匿名结构体,如下所示:struct Foo { struct { size_t x, y; }; }; struct Foo f; f.x = 17; f.y = 42; 这样的struct成员被视为封闭的struct或union的成员(如果封...

45得票4回答
如何在较新版本的gcc上启用c11?

我目前使用的是gcc 4.6.3。我的理解是gcc默认使用gnu89标准,我想启用C11,最新的C标准。我尝试过:[pauldb@pauldb-laptop test ]$ gcc -std=c11 -o test test.c cc1: error: unrecognised command...

44得票4回答
C11之后是否有未来的C标准计划?

我在开放标准网站上进行了搜索,特别是C工作组主页,但只找到了有关C11的信息。 他们似乎定期举行会议并讨论不同的功能和扩展,但从未实际提及未来的C标准或路线图。很难判断他们是在制定新标准还是只是针对当前标准的技术勘误。

41得票2回答
C99和C11之间的区别

我目前正在学习C语言。我读的是基于C99的书籍(The book)。在完成这本书后,我想更新我的知识到C11,或者如果有很大的区别,更换资源。因此,我所要求的是一个解释或资源来更新我的知识。我只发现了这个来源。然而,它似乎没有涵盖我需要的信息,或者不够简洁明了。 提前致谢。 附言:我想学习C...

39得票6回答
易失变量可以在序列点之间被多次读取吗?

我正在制作自己的C编译器,以尽可能了解C的详细信息。现在我正在尝试准确理解volatile对象的工作原理。 令人困惑的是,代码中的每个读取访问都必须严格执行(C11,6.7.3p7): 具有易失性限定类型的对象可能以实现未知的方式进行修改或具有其他未知的副作用。因此,任何引用这种对象的表...

37得票1回答
如何从fopen转换为fopen_s?

Visual Studio 报错 fopen。我找不到更改它的正确语法。我用的是:FILE *filepoint = (fopen(fileName, "r")); 到FILE *filepoint = (fopen_s(&,fileName, "r")); 第一个参数的剩余部分是什么?

36得票7回答
如何在编译时提取源文件名(不带路径和后缀名)?

同时使用 gcc -std=c11 和 g++ -std=c++14。 例如,对于名为 src/dir/Hello.cxx 的文件,应该扩展为类似于:const char basename[] = "Hello"; 或者const char basename[] = getStaticBas...

36得票3回答
C11的最新变化

C1x已经成为ISO/IEC 9899:2011,也就是C11。 有没有人知道标准从2011年4月草案n1570到现在有哪些变化(如果有的话)? 预计:这里有来自伦敦(2011年3月)的委员会会议记录(应该包括在n1570中)此处, 和来自华盛顿特区的记录(2011年10月)此处; 我想列...