网站(网店)建设方案范文,天津建设工程信息网怎么投标,专业建站制作,个人建设网站难吗今天不是做题系列#xff0c;是知识系列啦。
说到指针#xff0c;我们初学这一定会气的牙痒痒把#xff0c;笔者也是#xff0c;这么我好久而不得呀#xff0c;今天来让我们聊聊指针。
其一
首先#xff0c;我们明确的知道#xff0c;假如我们开一个变量#xff0c;…今天不是做题系列是知识系列啦。
说到指针我们初学这一定会气的牙痒痒把笔者也是这么我好久而不得呀今天来让我们聊聊指针。
其一
首先我们明确的知道假如我们开一个变量那么我们的c程序会给他分配内存并且在此内存上来存储数值。我们使用取地址符来验证地址
请看代码 int a10;coutaa a的地址为aendl; 所以我们每开一个一个变量并为它赋予初始值那么系统便会为我们在内存里开辟一个空间来存储我们赋予的数值。
由此推广指针也不例外。我们开辟一个指针变量系统也会为他在内存中开辟一个空间只是与基本数据类型不同的是指针变量存储的不是具体的数值例如整数、浮点数之类而是一个变量的地址。
我们来验证一下 int* p;cout我们开的指针变量的地址为pendl;pa;coutp的存储的地址为p a的地址为aendl;cout我们开的指针变量的地址为pendl;
运行结果 大家看到了吗我们开的指针变量本身也有地址只不过他的地址存储的值也是地址也就是说指针变量存的就是地址。我们打印指针变量会出现指针变量的值也就是它存储的地址这就跟我们打印a会出现a存储的值10一样而打印指针变量的地址则会出现存储指针变量的地址这二者并不冲突大家也看到了在内存中开辟的存储指针变量的地址跟指针变量存储的地址不一样。
举个例子吧好比是你爸爸有你的手机号码而你有你女朋友的手机号码 。
其二
我们使用*来访问指针变量指向的地址所存储的值。这就是我们所说的操作内存我们直接在地址上进行值的修改。
看代码 cout我们来访问我们的指针变量所存储的地址的存储的值为*pendl; *p89300; cout修改a的值为*pendl;cout修改后的a的值aendl; 大家看到了吧我们使用*p直接就可以访问指针变量指向的地址的存储的值。我们修改这块地址存储的之后这个变量a也就跟着修改了值。
这就是指针的妙用。
简单来说就是指针变量记录着地址指针变量就是一个地址我们使用*来访问地址的值并且修改那么原变量的值也会修改。
大声喊出我是谁作者狂喜中接下来会更新一些数据结构之类的东西当然是使用c实现或者c语言如果时间允许的话。主营业务Java算法大家有啥Java算法竞赛类的疑问欢迎私信。