极速下载站 —— 提供优质软件下载服务,感受全新的极速下载体验!

最近更新 | 软件专题 | 软件分类 | 软件排行

您的位置:极速下载站资讯首页软件教程软件资讯 → 怎样了解C言语中的指针,怎样运用?(3)

怎样了解C言语中的指针,怎样运用?(3)

时间:2019-08-10 15:24:30  作者:Dorise  浏览量:99

更节省资源,更有功率的做法是:weekday 和 weekend 函数处理这份“规划书”时,直接处理 main 里的“规划书”就能够了。不要仿制后再处理,完事了还要在从自己内部传出。那,weekday 和 weekend 函数应该怎样修正呢?请看:

void weekday(struct week *wd)

{

wd->sleep_time = 7.0; // 7 小时

wd->work_time = 8.5; // 8.5 小时

}

void weekend(struct week *we)

{ we->sleep_time = 9.0; // 9 小时

we->work_time = 2.5; // 2.5 小时

}

int main()

{

struct week w;

weekday(&w);

printf(\\\"weekday,sleep time: %0.1f,work time: %0.1f \\\",w.sleep_time,w.work_time);

weekend(&w);

printf(\\\"weekend,sleep time: %0.1f,work time: %0.1f \\\",w.sleep_time,w.work_time);

return 0;

}

图:

图三 怎样了解C言语中的指针,怎样运用

看到了没,利用指针,整个 C 代码简练多了。weekday 和 weekend 函数接收到的参数都是 main 里结构体变量 w 的地址,所以它俩都是直接操作 w 的。这样就不用在自己的栈帧里仿制一份 w 再处理了,也不用在处理完毕还要 return 给 main 了。

看到这儿,你可能会说,什么嘛,不便是用指针代替了结构体做参数吗?指针说不定比结构体还要耗空间呢!对吗?一起来看下:结构体变量 w,它占用内存至少两个 sizeof(double) 的空间(一个 double 型数据一般占用 8 字节空间)。而一个指针,不管它是什么类型的,在大多数 32 位计算机中,它只占 4 字节空间,在大多数 64 位计算机中,它也仅仅占 8 字节空间。所以运用指针做 weekday 和 weekend 函数的参数,在空间上,肯定是比直接运用 week 结构体节省空间的,况且指针还提高了功率,简练了代码。

假如是一个 char 型变量,它只占用 1 字节空间,这时运用指针的确更浪费空间。可是假如是一个十分复杂的结构体,它占用的内存空间甚至达几千字节,这时运用指针就十分节省空间了。所以说,工具是死的,人是活的。

到这儿,相信你已经了解 C 言语指针在节省空间,提高程序功率方面的作用了。事实上,这儿咱们介绍的仅仅是指针的冰山一角,在以后的文章里,你会益发觉得 C 言语指针的强壮的。

<上一页123

相关资讯