[求助]一个很小的程序~~~出错~
#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; }
应该这样改呢????
#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; }
应该这样改呢????
2004-12-10 23:30
2004-12-11 12:16
还是出错啊~~~~
没什么用啊~~~~
2004-12-11 12:24
2004-12-11 12:26
正确的如下~~
#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
2004-12-11 12:38
好象 可以
太谢谢了哦~~~~~~~
2004-12-11 16:43
很简单的道理,你定义的是字符数组,数组的首地址一旦确定后是不能被改变的.所以b.name=a[0].name会出错. 如定义字符指针的话就可以,不过要注意内存泄露方面的问题.

2004-12-12 11:04
2004-12-12 18:23
了解
2004-12-21 20:35