如果我的代码包含此constexpr字符串
constexpr char my_str[] = "hello";
Run Code Online (Sandbox Code Playgroud)
my_str包含有关其大小的信息的类型,即sizeof(my_str)常量6,可以在需要常量的任何地方使用。
那strlen(my_str)呢 是否可以/也应该将其评估为编译时常数?
这是yes的示例:https : //ideone.com/2U65bN
这是一个没有的示例:http : //coliru.stacked-crooked.com/a/8cb094776dfc5969
标准对此有何看法?当然不是“也许”吗?
最近,我一直在大量阅读有关glibc函数如何在Linux中包装系统调用的信息。但是,我想知道glibc和GNU C编译器之间的关系。
比方说,例如,我想编写自己的C Standard实现并编写一个名为“ newglibc”的新库,而我只需稍作更改即可。例如,在系统调用之前和之后,我都会进行更多检查和采取措施。我需要编写一个新的编译器吗?还是可以使用相同的GNU gcc编译器?
如果编译器与库完全分开,那么有人能够理论上在Windows系统上使用gcc,如果他们可以将其转换为.exe并提供Windows提供的标准C库呢?
谢谢