实验11——指针的基础应用
1.本次课学习到的知识点:
(1)本次课学到的知识点:指针是c语言中一个非常重要的概念。在c语言中,如果定义了一个变量,在编译时就会根据变量的类型给他分配相应大小的内存单元。如果把存储器看成一个建筑物,建筑物内的房间就是存储器单元,房间号就是定义。
(2)定义指针变量的一般形式:
类型名 *指针变量名;
类型名指定指针变量所指向的变量的类型,必须是有效数据类型:int,float,char等。
2. 实验过程中遇到的问题及解决方法:
问题:对于指针和地址的关系还是搞不太清楚。
方法:看书,多加练习
3. 实验心得体会及本章学习总结:
新一章的学习又开始了,虽然引入指针以后使c语言更加复杂,但是我会继续努力学习。
4. 几个问题的思考与回答(15分)
(1)两个相同类型的指针变量能不能相加?为什么
因为指针变量的值存放的是所指向变量的地址,两个地址相加并不能保证结果为一个有效的地址值。
(2)在使用scanf()函数时,输入参数列表需要使用取地址操作符&,但当参数为字符数组名时并没有使用,为什么?如果在字符数组名前加上取地址操作符&,会发生什么?
因为字符数组名的值是一个特殊的固定地址,可以看作是常量指针,因此不需要再使用取地址符来获取该数组的地址。
(3)C语言不允许用赋值表达式直接对数组赋值,为什么?
数组名是常量指针,不能对常量进行赋值。