第四,指针有啥用。

 

比方说,我们有个函数,如下:

 

int add(int x){

 

return (x+1); //把输入的值加1并返回结果。

 

}

好了,应用的时候是这样的:

 

{

 

int a=1;

 

a=add(a); //add函数返回的是a+1

 

//现在 a等于2

 

}

 

很简单吧,就是把a都累加一次。

 

用指针怎么写:

 

void add(int *y){ //给入的是一个int指针,是一个地址。

 

*y = *y + 1; //* 是指引用 这个地址所保存的变量

 

//这条语句的意思就是,把这个地址里的值加1,然后放回这个地址。

 

}

 

把这个函数用起来:

 

{

 

int a=1;

 

add(&a); //把a的地址传到函数里

 

//add函数,就是把a的值加1,再放回到变量a里。

 

//现在a等于2

 

}

 

试想一下,如果我们要对一个数据结构里的数据进行处理,那是不是就该传入这个结构的地址,在函数中依靠指针来引用这个地址的数据结构,进行运算。

 

第五,若已有一个指针变量,可不可以用另外一个指针来保存这个变量的地址呢。

 

可以的。

 

一个变量保存另一个指针的地址,那它就是通常所说是“指针的指针”了。

 

通常,指针的指针多用做(或指的是)函数指针或数据结构中有指针的情况。初学者搞不清,就不要勉强了。

 

第六,空指针可怕吗?

 

我们知道,一个变量要赋值后才能用,指针也是一样。指针不赋值(不给定地址)就拿来用,是不是也要出错。这个就是空指针。一般把指针赋值为Null,就是表明这个指针是空的,不能用。所以程序中一定要经常判别指针不是Null才能用。

 

最后,初学C语言,最好把复合的语句拆开来看,比较容易理解。像 int *a=&b; 这种,拆成

 

int * a;

 

a=&b;

 

就好理解了。

 

 

 

上面所说的,是指针比较基础的东西,希望能帮助初学者学习理清思路。

今日学习寄语:

 1、要么做第一个,要么做最好的一个。

2、信念和目标,必须永远洋溢在程序员内心。3、最累的时候,家人是你最好的归宿。

4、C程序员永远不会灭亡。他们只是cast成了void。

5、真正的程序员认为自己比用户更明白用户需要什么。

6、退一步海阔天空,这是一种应有的心境。

7、过去的代码都是未经测试的代码。

8、优秀的判断力来自经验,但经验来自于错误的判断。

9、测试是来表明bug的存在而不是不存在。

10、我们这个世界的一个问题是,蠢人信誓旦旦,智人满腹狐疑。

11、一个好汉三个帮,程序员同样如此。

12、看再多的书是学不全脚本的,要多实践。13、无私奉献不是天方夜谭,有时候,我们也可以做到。

14、世界上只有两句真理:1、人一定会死。2、程序一定有Bug。

15、UNIX很简单。但需要有一定天赋的人才能理解这种简单。

16、程序中蕴含着很多的道理,唯有大彻大悟者方能体会其中的奥妙。

17、编程中我们会遇到多少挫折?表放弃,沙漠尽头必是绿洲。

18、做技术一定要一颗恒心,这样才不会半途而废。

19、不要被对象、属性、方法等词汇所迷惑;最根本的是先了解最基础知识。

20、请把书上的例子亲手到电脑上实践,即使配套光盘中有源文件。

技术
下载桌面版
GitHub
Gitee
SourceForge
百度网盘(提取码:draw)
云服务器优惠
华为云优惠券
腾讯云优惠券
阿里云优惠券
Vultr优惠券
站点信息
问题反馈
邮箱:[email protected]
吐槽一下
QQ群:766591547
关注微信