标题:[求助]一个很小的程序~~~出错~
只看楼主
dianpozi
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2004-10-31
 问题点数:0 回复次数:10 
[求助]一个很小的程序~~~出错~

#include<iostream.h> #include<string.h> void main() { struct jiang { char name[10]; }; jiang a[40],b; cin>>a[0].name; cin>>a[1].name; b.name=a[0].name; a[0].name=a[1].name; a[1].name=b.name; }

应该这样改呢????

搜索更多相关主题的帖子: jiang include 
2004-12-10 23:30
corrupt
Rank: 2
等 级:新手上路
威 望:3
帖 子:535
专家分:0
注 册:2004-9-29
得分:0 
请把 struct 放到 main() 外面~

2004-12-11 12:16
dianpozi
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2004-10-31
得分:0 

还是出错啊~~~~

没什么用啊~~~~

2004-12-11 12:24
corrupt
Rank: 2
等 级:新手上路
威 望:3
帖 子:535
专家分:0
注 册:2004-9-29
得分:0 

字符串 不能 用 = 的

用strcpy(a[0].name,b.name)


2004-12-11 12:26
corrupt
Rank: 2
等 级:新手上路
威 望:3
帖 子:535
专家分:0
注 册:2004-9-29
得分:0 

正确的如下~~

#include<iostream.h> #include<string.h>

struct jiang { char name[10]; }; void main() { jiang a[40],b; cin>>a[0].name; cin>>a[1].name; strcpy(b.name,a[0].name); strcpy(a[0].name,a[1].name); strcpy(a[1].name,b.name); cout<<a[0].name<<endl; cout<<a[1].name; }


2004-12-11 12:26
corrupt
Rank: 2
等 级:新手上路
威 望:3
帖 子:535
专家分:0
注 册:2004-9-29
得分:0 

楼主 好了没啊~???

是不是 你所 希望的啊?


2004-12-11 12:38
dianpozi
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2004-10-31
得分:0 

好象 可以

太谢谢了哦~~~~~~~

2004-12-11 16:43
young
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:223
专家分:160
注 册:2004-9-5
得分:0 

很简单的道理,你定义的是字符数组,数组的首地址一旦确定后是不能被改变的.所以b.name=a[0].name会出错. 如定义字符指针的话就可以,不过要注意内存泄露方面的问题.


如果你爱C语言,请你爱指针; 如果你爱指针,请你爱指针的指针;
2004-12-12 11:04
dianpozi
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2004-10-31
得分:0 
谢谢大家~~~~~
2004-12-12 18:23
string
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2004-12-21
得分:0 

了解

2004-12-21 20:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-9188-1-1.html




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

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