如何在一个函数中返回几个char*值?(入门问题)
如何在一个函数中返回几个char*值?谢谢指点!
int foo(char *a,char *b)
{
char x[]="test1";
char y[]="test2";
a=x;
b=y;
return 1;
}
void main()
{
int r;
char *s;
char *t;
r=0;
r=foo(*s,*t);
cout<<r<<" "<<s<<" "<<t<<endl;
}
希望结果:1 test1 test2
问题点数:30、回复次数:6Top
1 楼hzhxxx(程序方程)回复于 2004-11-04 13:46:02 得分 5
在 foo () 里面使用 strcpy copy ,不要指针直接赋值Top
2 楼readi(牛皮大鼓)回复于 2004-11-04 13:47:06 得分 8
int foo(char *a,char *b)
{
char x[]="test1";
char y[]="test2";
strcpy(a, x);
strcpy(b, y);
return 1;
}
void main()
{
int r;
char s[5];
char t[5];
r=0;
r=foo(*s,*t);
cout<<r<<" "<<s<<" "<<t<<endl;
}
Top
3 楼dropingleaf(叶孤飞云)回复于 2004-11-04 13:50:23 得分 7
先定义一个类
class tt
{
char *c;
char *d;
}
然后在函数foo里返回这个类就可以了Top
4 楼LittleLee(飞天猫)回复于 2004-11-04 13:51:30 得分 2
同意楼上Top
5 楼LittleLee(飞天猫)回复于 2004-11-04 13:52:05 得分 0
同意readi(牛皮大鼓)Top
6 楼cryptonym(想裸睡)回复于 2004-11-04 13:57:19 得分 8
你这个子函数写的有问题丫,应该是
int foo(char *a,char *b)
{
char x[]="test1";
char y[]="test2";
strcpy(a, x);
strcpy(b, y);
return 1;
}
void main()
{
int r;
char s[5];
char t[5];
r=0;
r=foo(s,t);
cout<<r<<" "<<s<<" "<<t<<endl;
}
Top




