c和指针第一章快速上手,C语言中的指针部分如何入门

1,C语言中的指针部分如何入门指针记住一句话和地址有关的都不带星号和赋值有关的都带星号 。希望对你有帮助请采纳 。B :i = p;试图把 p 的地址赋给 i但是i是整形 。而p是整形指针 。C:i = *p;p没有得到值,也没有给p一个明确的地址 。D:p = 2*p + 1这个错的离谱了= =建议去看清华大学出版社谭浩强的C程序设计 。指针讲的蛮细致 。【c和指针第一章快速上手,C语言中的指针部分如何入门】
2 , C指针问题 初学这个不是指针的问题,而是C++重载的<<操作符的问题 。对于int* , 调用的是:basic_ostream<_Elem, _Tr>& operator<<(const void *_Val);对于char*,调用的是:basic_ostream<_Elem, _Tr>& operator<<(const char*_Val);之所以单独重载了一个针对char*的<<操作符,目的就是现实字符串啊 。如果想显示字符c的地址,可以:cout << static_cast<const void*>(pc) << endl;这个其实不怪你这个是操作符 << 搞的鬼你如果深入学C++以后就会知道<<进行了运算符重载对于字符指针进行其值的输出你想输出地址也很简单把cout<<pc<<endl;改成cout << static_cast<void *>(p) << endl;
3,c语言指针简单教程指针可以说是c的一大特色,很多人对它却不慎了解,其实可以通过比较形象的方法让你明白,指针到底是个什么东西 。c语言里的数据存储没有指针介入时就是直接操作的,就像你去一幢楼找人,保安都是直接把人带给你的,c存取数据也这样,但是有时候就是不知道这个变量的名字,也就是你不认识那个人叫什么,还能找到那个数据或人么,那就是可以在c中用指针来实现,相当于你不知道那人叫什么,但是你知道他住那个房间(我们这里假设一个房间就住一个人),保安还是可以把人带给你,c也一样,你指出了那个数据放在那个位置了,cpu也可以把数据找给你,一样的道理 。还有就是这个会有什么好处呢,就要说道数组了,你在连续的内存单元存了一堆数 , 类似你的一群朋友住在那个楼里,而且是挨个住的,你要把他们叫出去玩,就如你要把数据拿出来用,那么本来一摇一个一个的报名字给保安,说哪个人那个人等等帮我找下,c里也可以通过这种方法来实现,但明显太麻烦了,如果你知道第一个人住的房间号,然后比如有有10个人,那么你只要说帮我叫下几号到几号人(指他们住的连续的房牌号) , 一下就哦了,保安也更容易做到,因为保安人名字可能不是知道,但是房间号一定知道,c里也一样,你不需要一个一个去调用这些数据,直接知道他们的第一个数据的地址,然后挨个往下数说到那个位置的数据帮我调用下就可以了,其实你给了一个变量,cpu还是要通过地址去找找到那个数,类似你和保安说那个人名字 , 他还是要查出他住那个房间一样 。简单教程就这样,希望指正,也希望你能够对指针有很好的应用有一本叫做《C和指针》的书,讲的很详细了 。如果不容易理解,可以看《C_C++指针经验总结》这本,例子非常多 。这两本 狗狗 上都能找到

    推荐阅读