c - 为什么不允许使用 extern long int c?

标签 c

当我做类似的事情时

typedef long a;
extern a int c;

它给我错误:声明说明符中有两个或多个数据类型。为什么?

编辑

typedef long a;
extern a c;

工作正常。那么为什么不在上面呢?

最佳答案

这是一个 typedef,不是宏。编译器看不到 extern long int c,它看到了 extern a int c,它包含两种不同的类型(a整数).

关于c - 为什么不允许使用 extern long int c?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18810520/

相关文章:

c - 找到从轮廓检测到的圆的厚度?

char * 、 strcat 交互。为什么它不打印任何内容

python - 如何在 C 扩展中创建自定义 Python 异常类型?

c - 使用 sprintf 格式化 char 数组的打印

c - 使用 GDB 测试 Shellcode

C语言 : Getting Segmentation fault on Declaring an array

c - 为什么在 C 中使用指针时不需要指定数组大小?

c - 从文件中读取数据到数组中——C语言

c - unix goto命令源代码

c - 如何使用 libxml2 库在 c 中解析 XML 字符串而不是 XML 文档