指针易错点

 

1、写内存时一定要确保内存可写

2、指针是一种数据类型,是指他指向的内存空间的数据类型

3、不允许向NULL或未知内存地址拷贝内存

char *buf = "fuck86.com"; //文字常量区不可修改 

buf[1] = 'm';  //ERR

指针指向 文字常量 不可修改

 

char str[] = "fuck86.com"; //同样是文字常量不可修改 拷贝到栈区就OK了

str[1] = 'm'; //OK

数组没有指向 只是从文字常量区拷贝字符串到栈区 可修改

 

char *p = NULL;

strcpy(p,"123``"); //ERR

不允许向NULL或未知内存地址拷贝内存

 

char *p = NULL;

char buf[] = "fuck86";

p = &buf[0];

p = &buf[1];

for(int i = 0;i<sizeof(buf),i++){

     p = &buf[i];

}

指针可以随意修改指向 只要不是空或未知空间愿意指到哪指哪

 

u=4168620125,3423446580&fm=26&gp=0.jpg

本博客所有文章如无特别注明均为原创。作者:odaycaogen复制或转载请以超链接形式注明转自 123``blog
原文地址《指针易错点

相关推荐

发表评论

路人甲 表情
Ctrl+Enter快速提交

网友评论(0)