在程序中,有一个头文件typedef.h,它声明typedef struct {int i; char b;} rdi;
然后有3个文件夹,每个文件夹有几个程序执行一个特定的任务,每个文件夹有一个头文件.在每个3个文件夹的头文件中
#include typfedef.h
然后宣布
extern rdi *rdi_x;
在所有3个文件夹中它做到了.但是我在程序定义中没有看到它:
rdi rdi_x;
我的问题是是否需要定义rdi rdi_x;在程序中.
正如我从c教科书中了解到的,程序中某处需要定义rdi rdi_x;或者我的理解不好.
解决方法As I understand from c text book,somewhere in the program it needs to define
rdi rdi_x;
or my understanding is not good.
只有在使用它时,才需要定义rdi_x.只需声明变量就不需要定义它.
拿一个.c文件的简单情况:
程序无法构建:
extern int i;extern int j;extern int k;int main(){ k = 10;}
该程序将无法构建,因为k被使用.如果我们提供只有k的定义,它将构建很好.
程序成功建立:
extern int i;extern int j;extern int k;int main(){ k = 10;}int k;
在这里,我和j被声明但不被使用.因此,它们不需要定义.
总结以上是内存溢出为你收集整理的澄清了解C变量全部内容,希望文章能够帮你解决澄清了解C变量所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)