|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 指针问题
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
471
人关注过本帖
标题:
指针问题
只看楼主
加入收藏
尤慕思
等 级:
论坛游民
帖 子:18
专家分:12
注 册:2011-2-26
结帖率:
100%
楼主
收藏
已结贴
√
问题点数:2 回复次数:8
指针问题
遇到一个错误的试题:
#include <stdio.h>
#include<string.h>
int main(int argc, char *argv[])
{
char *p1="abc",*p2="ABC";
strcat(p1,p2);
puts(p1);
return 0;
}
麻烦大虾指出其中的问题以及出问题的原因!!!!!
搜索更多相关主题的帖子:
问题
include
return
2011-03-07 13:11
举报帖子
使用道具
赠送鲜花
瓦药墙
等 级:
黑侠
帖 子:218
专家分:556
注 册:2009-9-16
第
2
楼
收藏
得分:0
p1指向了常量区, strcat(p1, p2); //这样就错了
2011-03-07 13:13
举报帖子
使用道具
赠送鲜花
瓦药墙
等 级:
黑侠
帖 子:218
专家分:556
注 册:2009-9-16
第
3
楼
收藏
得分:0
#include <stdio.h>
#include<string.h>
int main(int argc, char *argv[])
{
char p1[100]="abc",*p2="ABC";
strcat(p1,p2);
puts(p1);
return 0;
}
2011-03-07 13:13
举报帖子
使用道具
赠送鲜花
瓦药墙
等 级:
黑侠
帖 子:218
专家分:556
注 册:2009-9-16
第
4
楼
收藏
得分:2
说下, 指针指向了常量区, 然后试图通过指针修改常量区数据, 会错的...
比如
char *ptr = "abc";
//ptr指向了常量区
以下操作是不允许的
*ptr = 'd';
ptr[1] = 'e'
*(ptr + 2) = 'f'
...
原因: 常量不可修改
2011-03-07 13:17
举报帖子
使用道具
赠送鲜花
尤慕思
等 级:
论坛游民
帖 子:18
专家分:12
注 册:2011-2-26
第
5
楼
收藏
得分:0
回复 3楼 瓦药墙
多谢大侠指点,
那么有没有办法在初始化时把无名字符串放在非常量区,
即我们可以通过指针对无名字符串进行修改?
2011-03-08 16:04
举报帖子
使用道具
赠送鲜花
瓦药墙
等 级:
黑侠
帖 子:218
专家分:556
注 册:2009-9-16
第
6
楼
收藏
得分:0
你可以用字符数组, 或者用malloc or new 申请一块内存空间, 申请到的是堆空间, 这样, 你就可以通过指针来修改了
2011-03-08 16:28
举报帖子
使用道具
赠送鲜花
chenwei435
等 级:
青峰侠
威 望:
2
帖 子:322
专家分:1611
注 册:2010-11-28
第
7
楼
收藏
得分:0
没有错误啊。不行的话可以在tc 下试一试
2011-03-08 22:05
举报帖子
使用道具
赠送鲜花
尤慕思
等 级:
论坛游民
帖 子:18
专家分:12
注 册:2011-2-26
第
8
楼
收藏
得分:0
回复 5楼 尤慕思
字符数组肯定可以使用,
我想试着用指针修改无名字符串
但是无法给无名字符串动态分配内存,
你能写个用malloc或者new的例子吗?
我不想钻牛角尖,这是一同学拿来为难我的问题,O(∩_∩)O~
2011-03-08 22:25
举报帖子
使用道具
赠送鲜花
尤慕思
等 级:
论坛游民
帖 子:18
专家分:12
注 册:2011-2-26
第
9
楼
收藏
得分:0
回复 6楼 瓦药墙
我用的编译器是C-free,编译通不过;
网上说TC过时了,用它写程序不严格吧,有些错误它查不出来,
会误导以后的学习
我刚才用tc编译了一下,还真能通过,
你还是换个编译器吧,O(∩_∩)O~
2011-03-08 22:34
举报帖子
使用道具
赠送鲜花
9
1/1页
1
快速回复:
指针问题
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.077636 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved