加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

澄清了解C变量

发布时间:2020-12-16 02:59:42 所属栏目:百科 来源:网络整理
导读:我是一个新手,试图理解C中的程序. 在程序中,有一个头文件typedef.h,它声明typedef struct {int i; char b;} rdi; 然后有3个文件夹,每个文件夹有几个程序执行一个特定的任务,每个文件夹有一个头文件.在每个3个文件夹的头文件中 #include typfedef.h 然后宣布
我是一个新手,试图理解C中的程序.
在程序中,有一个头文件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被声明但不被使用.因此,它们不需要定义.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读