课堂笔记
一、const的用法
const修饰指针变量的时候:
1. const如果放在*的左边,修饰的是指针指向的内容,保证指针指向的内容不能通过指针来改 变。但是指针变量本身的内容可变。
2. const如果放在*的右边,修饰的是指针变量本身,保证了指针变量的内容不能修改,但是指 针指向的内容,可以通过指针改变。
举例:
int const *p =&a
*p=0 不可发生 但是 p = &m 可以发生
int * const p
p = &a 不可发生 但是*p = 0可以发生
代码的简化
例如
将一个数组的内容拷贝到另一个数组中
viod my_strcpy(char*dest,const char*str)
while(*str != '\0')
{
*dest = *str;
str++;
dest:
}
以上内容可以简化
while(*dest++ = *str++)
{
;
}
二、函数 assert //断言
引用头文件<assert.h>可以准确知道哪一行出错 并且知道为什么出错阻止代码的运行
三、编程常见的错误
1.编译型错误 直接看错误提示信息(双击),解决问题。或者凭借经验就可以搞定。相对来说简单。
2.链接型错误 看错误提示信息,主要在代码中找到错误信息中的标识符,然后定位问题所在。一般是标识符名不 存在或者拼写错误。例如函数引用错误
定义函数为mystrlen
但是下面代码中写的是my_strlen
3 .运行时错误 借助调试,逐步定位问题。最难解决。