首页 > 代码库 > 指针入门

指针入门

第一节 看的角度不同 所得到的值不同

 

 

从不同的角度观看 数据所看到的数据类型不同

(所需要注意的事要问的内容是什么)

生活中常见的进制为10进制

 

两位十进制可以表示99,而三位十进制数可以表示的最大为999、位数越多能表达的表示的数越大

列如
01代表十进制的1
10代表十进制的2

 

 

 


八位的二进制位可以表示十进制的255

 

 

字节越多能表达的数的范围越大

字节数也是同样如此

 


明白:数据是怎么保存在计算机中的

‘a‘ char 以字符所代表的ASCII码保存

取决于你把他看成什么


第二节

#include<stdio.h>

 

int main()
{
int k=999;
char name[]="rupeng.com";
printf("%08x\n",&k);
printf("%08x\n",name);

return 0;

 

}
&k 打印变量在内存中的地址{16进制}


字符串不需要&符号

16进制的61=10进制的97


name 内存的地址


int 类型 4个字节
short 2个字节


int 能表达的字节数更多
所以int 的范围大
进制间的计算用工具更加省事

数字888在内存中是怎么存储的

所有的数据都是在内存中存储的

我们所获得的都是内存的首地址


用 int 类型也可以存地址
VS2012的运行环境中

int iAddr=&i;//定义一个int类型的指针,指向i的地址。
“类型*”变量

可以用int类型存储指针的地址
short *sa=&s;//short类型的指针,指向一个地址


short类型的指针并不是short类型的数据


总结
&用来取一个变量的“房间号”
*用来取数字所代表的房间号的数据(取值)


和类型放在一块 
int hello=*iAddr;

指针入门