| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5722 人关注过本帖
标题:通过指针获取输入的字符串
取消只看楼主 加入收藏
ODmini
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2014-8-27
结帖率:66.67%
收藏
已结贴  问题点数:4 回复次数:7 
通过指针获取输入的字符串
在Linux系统下,运行下面的代码出现(段错误,核心已转储)

求问出错在哪里?

图片附件: 游客没有浏览图片的权限,请 登录注册




[此贴子已经被作者于2016-8-5 23:16编辑过]

搜索更多相关主题的帖子: 字符串 Linux 
2016-08-05 23:15
ODmini
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2014-8-27
收藏
得分:0 
回复 2楼 FQYB
我用scanf()获取输入了。。
2016-08-05 23:45
ODmini
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2014-8-27
收藏
得分:0 
回复 5楼 FQYB
首先谢谢你的耐心回答,我知道你的第二种写法(指针指向一个数组),但是还不是我想要的结果;   

我之前确实这样写过:只定义char *p;   然后scanf("%s", p); 最后printf("%s\n", p);
而且也没出现什么问题,我想要的结果也是只用指针,而不用数组;

图片附件: 游客没有浏览图片的权限,请 登录注册


这个是我在某个博客上看到的,和我想要的结果一样,说明我说的不是无厘头。但是我将他的这个代码在Linux系统下运行之后也出现错误。不知道是什么原因!
2016-08-06 00:15
ODmini
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2014-8-27
收藏
得分:0 
回复 8楼 FQYB
恩恩,我也想了想,可能之前是因为【运气】的问题,指针没有指向“特殊的地方”;

不用数组,也可以这样写:

图片附件: 游客没有浏览图片的权限,请 登录注册


这样虽然运行的没问题,但是我认为有问题,因为a是字符变量,能存字符串吗?或者说自动为a开辟了空间(当给a一个字符串时)?
2016-08-06 00:37
ODmini
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2014-8-27
收藏
得分:0 
回复 10楼 FQYB
如果需要事先申请空间的话,你并不知道用户的输入需要占用多大的空间,没有“普遍性”;那么你的代码只能运行在特定场合下!

如果你用数组,或事先申请足够的空间,而用户的输入根本不需要这么大的空间,那么不是造成浪费了吗?

我想的就是这个问题。
2016-08-06 00:41
ODmini
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2014-8-27
收藏
得分:0 
回复 11楼 FQYB
虽然提到了【运气】这个词,但是我们写代码总不能靠运气吧?

难道没有解决的办法?

或者直接给出规定说【指针不能用于获取字符串】!

我是小白,我不懂,见谅!
2016-08-06 00:44
ODmini
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2014-8-27
收藏
得分:0 
回复 14楼 FQYB
嗯,谢了
2016-08-06 00:50
ODmini
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2014-8-27
收藏
得分:0 
回复 16楼 FQYB
我觉得这是一个简单的问题,只想简单地解决;

我自己认为是一个简单的问题,也许是自己学的不够深,不明白其中的【套路】。
2016-08-06 00:53
快速回复:通过指针获取输入的字符串
数据加载中...
 
   



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

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