C语言基础学习视频勘误整理
视频地址:B站搜索UP主:诸葛借剑,在“我的视频”里面,视频名:“C语言基础学习”。
视频链接:https://www.bilibili.com/video/BV18k4y1q7rx
C语言基础学习视频勘误整理文章地址:
我的视频里面有一些错误,在这篇文章里进行指出更正,欢迎大家指出错误。如果大家发现了其他的错误,可以私信我,我将在这篇文章里进行更新。
同时也希望发现错误的大家可以再错误处发弹幕指出错误,可以正确指引其他人,尽量避免一些误解。
P5 语句,判断与循环
- 55:40 处:第40行
应该将if语句写在 sum += i; 下面。
应该先加在sum上,在进行判断。
-
55:44 处:第40行
视频中:i == 50
更改为:i == 51
for( i = 0 ; i <= 100 ; i++)
{
if(i == 50)
break;
sum += i;
// 这里i == 50 的时候直接break了
//是从0 加到49,sum 并没有加上50,
//解决方案:将50更改为51或者将 sum += i 放在if语句前面。
}
- 57:44处
应该是1加到45,而不是46,总和会大于1000。
因为break的时候i是46,最后sum加的是45。
应该将if语句写在 sum += i; 下面。
应该先加在sum上,在进行判断。
P6 指针
-
25:46 处:
视频中:0060FEF3是是char型变量ch的值,同时也是指针变量pch的地址。
更改为:0060FEF3是是char型变量ch的地址,同时也是指针变量pch的值。
P10 函数与数组与指针
-
47: 06 处:
char c[] = "sddfhjgffhd";//这里数组c总共有12个元素,最后一个d后面还有一个'\0' for(int i = 0 ; i < sizeof(c) / sizeof(c[0]);i++){ // 这里的sizeof(c) == 12,sizeof(c[0]) == 1,sizeof(c) / sizeof(c[0]) == 12 // 那么这里的for循环将从's'遍历到'\0' // 因为'\0'是结束符,没有打印出来,所以结果和正确的一样。 // 如果只想遍历到最后一个d,循环的判断条件可以写成: // i < sizeof(c) / sizeof(c[0]) - 1 printf("%c",c[i]); }// 如果数组c是这样定义的: char c[] ={'s','d','d','f','h','j','g','f','f','h','d'}; // 这里的sizeof(c) == 11,sizeof(c[0]) == 1,sizeof(c) / sizeof(c[0]) == 11 // 循环的判断条件写成 i < sizeof(c) / sizeof(c[0]) 是完全正确的。 // 因为这里没有'\0',最后一个字符就是'd'