c++ - C 与 C++ 中的 struct 和 typedef

标签 c++ c struct typedef

我目前正在使用 C++ IDE 来处理需要在 C 上运行的内容,并希望确保以后不会遇到问题。制作以下结构后:

typedef struct test {
   int a;
   int b;
};

然后我使用创建它的一个实例 test my_test; 然后像 my_test.a = 5 等等...这在我的 VStudio C++ 中运行良好。 这以后会在 gcc 上工作吗?

我阅读了弹出的相关问题(我发现我也不是第一个提出此类问题的人)但似乎没有人按照我的方式使用。

其实typedef struct {//stuff} test;和我的版本有什么区别?

最佳答案

typedef struct THIS_IS_A_TAG
{
    int a;
    int b;
} THIS_IS_A_TYPEDEF;

THIS_IS_A_TYPEDEF object1;     // declare an object.       C:Ok,     C++:Ok
struct THIS_IS_A_TAG object2;  // declare another object.  C:Ok,     C++:Ok
THIS_IS_A_TAG object3;         // declare another object.  C:Not Ok, C++:Ok

typedef 的原因是因为 C 程序员希望能够做第三件事,但他们做不到。

关于c++ - C 与 C++ 中的 struct 和 typedef,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4082972/

相关文章:

c++ - Eigen 错误 : INVALID_MATRIX_PRODUCT multiplying vector and matrix

c++ - 使用 C++ 或 Qt 将 SQL LIKE 表达式转换为正则表达式

c - 读取 N 个字节时害怕意外行为

c - FUSE 文件系统在打开文件时崩溃(仅在 Release模式下)

arrays - 结构和Arduino

C++ Xcode-如何输出颜色

c++ - 以系统 native 形式获取可执行路径

我可以使用 scanf 来选择在哪一点修改字符串吗?

c - 如何为结构、结构内的结构数组正确分配内存,并将该数组作为参数传递

c - 枚举和结构定义