我正在努力

typedef struct
{
    int x = 5;
    char str[20];
}  nodeStr;

它可以在C++中工作,但不能在C中工​​作。要使其在C中工作,我需要从代码中删除x(即= 5)的定义。 C和C++在概念上有区别吗?谢谢!

最佳答案

类内初始化是C++ 11的一项新功能-如果使用(数量不多)较旧的C++编译器,它将无法编译。是的,这是C和C++之间的区别。

关于c++ - C和C++中的结构内部定义差异,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21920916/

10-10 10:09