main()
char *s1="Second";
char *s2="First";
swap(s1,s2);
printf("%s\n",s1);
printf("%s\n",s2);
我有一个练习,在之上交换那两个字符串(以便执行程序的那个字符串将看到“First Second”而不是“Second First”),通过更改值他们的指针,使用函数swap(我必须做)。
答案 0 :(得分:3)
这可以满足你的需要
void swap(char **s1, char **s2){
char *temp=*s1;
*s1=*s2;
*s2=temp;
}
int main(){
char *s1="second";
char *s2="first";
swap(&s1,&s2);
printf("%s",s1);
printf("%s",s2);
return 0;
}
答案 1 :(得分:0)
char *a="vinod";
char *b="kumar";
a=(char*)((int)a+(int)b);
b=(char*)((int)a-(int)b);
a=(char*)((int)a-(int)b);
printf("%s%s",a,b);
答案 2 :(得分:-1)
inline void swap(char*& s1, char*& s2)
{
char* temp = s1;
s1 = s2;
s2 = temp;
}