| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1104 人关注过本帖
标题:像初学者介绍一个容易犯错的问题
取消只看楼主 加入收藏
小旭哥
Rank: 2
等 级:论坛游民
帖 子:106
专家分:72
注 册:2012-11-4
结帖率:86.21%
收藏
已结贴  问题点数:20 回复次数:6 
像初学者介绍一个容易犯错的问题
这个问题特别适合于正在学指针和内存管理知识的学生。在介绍这个小问题的时候,可以先在VC上写下如下的源代码:
#include<stdio.h>

int main()
{
     char *p = "Hello word.";
     p[1] = 'L';
     printf( "%s\n", p );

     return 0;
}
这是一个错误的程序。
小问题  高手就不要喷我了 帮下那些初学者了解下新知识。
我在这里就不说这个程序哪里错了,自己去找哪里错了。以及为什么。了解这些,,对你以后编程有很大的作用。
搜索更多相关主题的帖子: 源代码 return 
2012-11-05 21:22
小旭哥
Rank: 2
等 级:论坛游民
帖 子:106
专家分:72
注 册:2012-11-4
收藏
得分:0 
回复 2楼 yijingtao
其实这是一个错误的程序   就是想让新手看看  究竟错在哪里了。。。。
2012-11-05 22:29
小旭哥
Rank: 2
等 级:论坛游民
帖 子:106
专家分:72
注 册:2012-11-4
收藏
得分:0 
回复 8楼 StarFall
我郁闷  怎么可能  我在VC6.0上报错了  必须得把char *p  改成char p[]
2012-11-06 12:41
小旭哥
Rank: 2
等 级:论坛游民
帖 子:106
专家分:72
注 册:2012-11-4
收藏
得分:0 
回复 13楼 zklhp
你确认在VC上可以运行?   我的就不可以啊   我也是VC  其实我想说的不是关于编译器  而是有关栈      静态存储区的 一些概念。。。
2012-11-06 12:43
小旭哥
Rank: 2
等 级:论坛游民
帖 子:106
专家分:72
注 册:2012-11-4
收藏
得分:0 
回复 4楼 yijingtao
我写的是p指针  存储的是字符串的首地址。。。   而“hello word” 是字符串常量  不可以做修改。   但是如果是下面的情况 char p[] ="hello word"  则是将字符串存储在数组里   而数组是可以修改的   因为它不是常量。。。  虽然书上经常说字符串是以数组的形式存储的  但是不能完全混为一谈   这涉及到静态存储区  栈 堆的知识点    我没考虑过编译器的问题。
2012-11-06 12:48
小旭哥
Rank: 2
等 级:论坛游民
帖 子:106
专家分:72
注 册:2012-11-4
收藏
得分:0 
回复 10楼 zklhp
朋友  你确认VC可以运行   我是在自己电脑上的VC上实验过后在敢放上去的。。。  我被VC弄糊涂了  呵呵
2012-11-06 13:02
小旭哥
Rank: 2
等 级:论坛游民
帖 子:106
专家分:72
注 册:2012-11-4
收藏
得分:0 
回复 17楼 zklhp
学习了,,,
2012-11-06 13:04
快速回复:像初学者介绍一个容易犯错的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021656 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved