strcpy(ptr,"hello world");是把hello world复制到ptr里边。
char *ptr=(char *)malloc (len)len;
这个char*是强制类型转换
将malloc的返回值强制转换为char型,malloc返回值是void*(空指针)。
size_t是一个整型。
指针赋值一定要是相同类型的指针赋值。(或者说步长一样的指针)
浮点型的指针不要和任何其他类型指针打交道。
长步长的指针赋值给短步长的指针,不同的数据类型的指针步长不同,获取的数据也不同,会产生数据丢失。反过来会取多的数据。
void*是一个万能指针:可以保存任何类型的指针的值,但是void*指针不能取值,因为它没有步长,无法确定取值。
void*指针++默认加一个字节,步长为1。
懂得malloc.ralloc.calloc三个的注意事项,如何使用
指针加减整数一定要考虑指针的步长
指针-指针是一个整数,是两个指针之间相差元素的个数
段错误常见错误:1 野指针 2 对0地址地址操作 3 scanf没有取地址
char *ptr=(char *)malloc (len)len;
这个char*是强制类型转换
将malloc的返回值强制转换为char型,malloc返回值是void*(空指针)。
size_t是一个整型。
指针赋值一定要是相同类型的指针赋值。(或者说步长一样的指针)
浮点型的指针不要和任何其他类型指针打交道。
长步长的指针赋值给短步长的指针,不同的数据类型的指针步长不同,获取的数据也不同,会产生数据丢失。反过来会取多的数据。
void*是一个万能指针:可以保存任何类型的指针的值,但是void*指针不能取值,因为它没有步长,无法确定取值。
void*指针++默认加一个字节,步长为1。
懂得malloc.ralloc.calloc三个的注意事项,如何使用
指针加减整数一定要考虑指针的步长
指针-指针是一个整数,是两个指针之间相差元素的个数
段错误常见错误:1 野指针 2 对0地址地址操作 3 scanf没有取地址