C语言指针学习日记
本笔记通过各种问题来学习(这样的方式个人比较喜欢|・ω・`)
-
List item
为什么指针要各种各样的类型用一种通用类型不香吗?
a:因为如果是int类型有四个字节,那么根据地址找这个值的时候就会读取接下来的四个字节的01代码,如果是char就读取一个字节。补充一下指针的加1,如果是int就跳4个字节这当然和类型有关。再补充,有通用类型指针那就是void*。 -
List item
void指针类型有什么用呢?
a:首先知道它可以存一个地址值,但是对它解引用和指针运算会出现问题。 -
List item
指针的指针是什么?
a:其实没什么好讲的也就是地址的地址,注意定义的时候如int和int和int后面会举一些例子 -
List item
指针有什么简单又实用的例子吗?
a:在一个函数里作为形参定义一个指针变量,main函数里面call一下这个函数同时将某个变量的地址传递过去,就是大家一直讲的值传递只不过这一次传递了地址,函数可以解引用从而在很短的生命周期里对main函数里面的变量进行操纵。简单的值传递是不能对main函数里面的变量进行操作,变量名一样也木大,具体为什么可以搜索一下stack是什么就明白了。