| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 799 人关注过本帖
标题:一个字符串的问题
只看楼主 加入收藏
xiuye1987
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2007-9-18
收藏
得分:0 

[CODE][/CODE]
#include<stdio.h>
int main(void)
{
char *s;


scanf ("%s",&s);
printf ("%s",s);
getch();
return 0;
}


2007-10-31 16:38
xiuye1987
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2007-9-18
收藏
得分:0 
[CODE]#include
[/CODE]

2007-10-31 16:39
hczsea
Rank: 2
等 级:论坛游民
帖 子:129
专家分:68
注 册:2007-10-23
收藏
得分:0 

#include<stdio.h>
int main(void)
{
char *s;

s = malloc(sizeof(char)*100);
if (s == NULL)
printf ("Malloc Error\n");

scanf ("%s",s);
printf ("%s",s);

free(s);
s = NULL;

getch();
return 0;
}

2007-10-31 17:03
学c
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2007-9-17
收藏
得分:0 

楼上写的很不错,这个问题好像ppmm飞燕版主说过,其实这样也是不对的:char *string="i am a chinese",和那个意思一样,都是有可能向内存的危险区域写入东西,但是老谭的书是这样写的,大家学习时要注意啊!!其实老谭的书不错,适合初学者。

2007-10-31 17:09
hczsea
Rank: 2
等 级:论坛游民
帖 子:129
专家分:68
注 册:2007-10-23
收藏
得分:0 

#include<stdio.h>
int main(void)
{
char *s;

s = malloc(sizeof(char)*100);
if (s == NULL)
printf ("Malloc Error\n");
else
{
scanf ("%s",s);
printf ("%s",s);

free(s);
s = NULL;
}

getch();
return 0;
}

唉,犯了一个严重错误。

2007-10-31 17:19
ondy
Rank: 1
等 级:新手上路
威 望:1
帖 子:88
专家分:0
注 册:2007-9-4
收藏
得分:0 

要记住不要用一个指针去指向一个数据!!!

要么先开辟一个空间!! 或者用数组


2007-10-31 18:08
星空战士
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2007-10-25
收藏
得分:0 
看来不需要我了

一切皆有可能,态度决定一切!
2007-10-31 23:51
yxwsbobo
Rank: 5Rank: 5
等 级:职业侠客
帖 子:345
专家分:306
注 册:2007-10-29
收藏
得分:0 
未分配空间  结果是未知的

How are you 怎么是你?
How old are you   怎么老是你?
2007-11-01 00:12
devfhpgah
Rank: 1
来 自:江西
等 级:新手上路
帖 子:204
专家分:0
注 册:2007-8-16
收藏
得分:0 

指针,没初始化会造成错误!
最好给它一个指向!
有的编绎器找不到这样的错。但结果不一定正确!


努力才会成功!
2007-11-01 09:17
koman
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2007-9-12
收藏
得分:0 

意思是不是就是我指针要指向具体的地址,或者说指向的那个变量要开个地址?

2007-11-01 16:29
快速回复:一个字符串的问题
数据加载中...
 
   



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

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