C语言错题本

本学渣在一个人学习的途中遇到过许多问题 如果没有老师的帮助可能很长时间都走不出来 所以我也希望我的错误能帮助到你

9月13日
题一

未赋值的局部指针是野指针(C)

题二

PS:对于指针来说,传递的是指针值的副本,point 函数内部对 p 的任何修改都不会影响到调用者(即 main 函数)中的原始指针 p。

将代码改成这样就可以了

题三
  1. %2d和%-2d(左对齐 右对齐)
  2. 12 4 12 回车也算在里面了
题四

C语言的标识符可分为 关键字 用户标识符 预定义标识符

题五

声明"char s1[20]="张三56";"后,使字符串s1为"张三"的赋值表达式为 ++++s1[4]=++++ ++++'++++ ++++\0++++ ++++'++++ ++++;++++ 。

中文字符占两个字节

9月14日
题一

s并非指向这个二维数组 *s=(char*)a 改变了步长 将(char *[3])强转成char类型

所以*++s其实结果是d char类型的d-2=b

题二

数组名是常量!! 不可以进行赋值操作

9月17日
题一

若变量已正确定义并赋值,表达式 -k++ 等价于______。
A.-(k++) B.(-k)++ C.-(k+1) D.-(++k)
答案:A,-(负号而不是减号)与++优先级相同,结合性从右至左。

题二

下列程序段的输出结果是 。
int m = 1, n = 2, *ptr1 = &m, *ptr2 = &n;
printf("%d %d %d %d", *ptr1, *ptr2, *ptr1= *ptr1 + *ptr2,*ptr1 =*ptr1 + *ptr2) ;
A. 1 2 1 1 B. 1 2 3 3 C.5 2 5 3 D. 1 2 3 5
答案:C。注意这里并不是逗号表达式,而是printf函数特有的性质,即从后向前计算。

相关推荐
散峰而望6 小时前
【算法竞赛】C++函数详解:从定义、调用到高级用法
c语言·开发语言·数据结构·c++·算法·github
冷凝雨7 小时前
复数乘法(C & Simulink)
c语言·开发语言·信号处理·simulink·dsp
CoderCodingNo7 小时前
【GESP】C++五级真题(贪心思想考点) luogu-B4071 [GESP202412 五级] 武器强化
开发语言·c++·算法
0和1的舞者7 小时前
Spring AOP详解(一)
java·开发语言·前端·spring·aop·面向切面
MoonBit月兔7 小时前
年终 Meetup:走进腾讯|AI 原生编程与 Code Agent 实战交流会
大数据·开发语言·人工智能·腾讯云·moonbit
智航GIS7 小时前
8.2 面向对象
开发语言·python
小小星球之旅7 小时前
CompletableFuture学习
java·开发语言·学习
智者知已应修善业8 小时前
【求等差数列个数/无序获取最大最小次大次小】2024-3-8
c语言·c++·经验分享·笔记·算法
kylezhao20198 小时前
C# 语言基础(变量、数据类型、流程控制、面向对象编程)
开发语言·计算机视觉·c#·visionpro
咯哦哦哦哦8 小时前
WSL + ubantu22.04 + 远程桌面闪退+黑屏闪退解决
linux·开发语言