C语言基础篇总结
经过两周的学习,今天进行了阶段性考试,原本以为自己都掌握差不多,考完试发现有好多知识点都还没太掌握,下面对错题和知识点进行梳理和巩固。
选择题:
*(p+4)指针移到第四位,当时想是移出去,忘记字符数组最后一位是‘\0’,‘\0’输出是ASCll是0
这道题老师讲了很多次,但我还是选错了,只能说概念还不清楚。A是定义了一个指针,这个指针指向数组第一个元素地址,而我选C,*s是求值,不能用来表达一个数组。
我选的C,当时没考虑swap函数中的m++和++n,认为他两的值不会改变,程序运行到swap(m++,++n)时他两的值就发生了自增。打印时已经自增完成 。
Char **p=a+1;p指针移到了world上
*a+1,*a代表首元素的地址a[0],+1表示地址向后移一位就是a[0][1]
*(p+1),指针从world上的w移到了china上的c,输出整个字符串就是china
.
因为a是代表二维数组中a[0],a+1代表向下移动到a[1]中,*a+1就等于*(a[0])+1)
*(p+1),*p代表a[1]中的首元素地址,而p+1相当于a+1,,而前面指针已经移向a[1],所以这次指针移向a[2].
*p+=2,表示为*p在二级指针表示地址,*p=*p+2,表示指针向后移了两位,指向了3.。
首先很感谢这次考试,发现自己二级指针和指针数组还掌握的不怎么牢固,查漏补缺,也让我知道自己哪里不足,课下好好重新补习一下二级指针和指针数组的相关知识。为以后的学习打下坚实的基础。
学习C语言基础让我对编程有了更深入的了解。我熟悉了C语言的语法和基本概念,学会了如何编写高效和可靠的程序。C语言为我打开了计算机科学和软件开发的大门,为我今后的学习和工作奠定了坚实的基础。我也认识到,编程是一个不断学习和不断提升的过程,我将继续深入学习C语言,并探索更多的编程知识和技能。