我已經編寫了交換字符串的代碼,但是我無法交換。什麼是問題,我怎樣才能解決它通過使用函數,swap
?通過交換函數進行字符串交換
#include <stdio.h>
void swap(char*,char*);
int main()
{
char *ptr[2] = {"hello", "morning"};
swap(ptr[0], ptr[1]);
printf("%s %s", ptr[0], ptr[1]);
return 0;
}
void swap(char *t1, char*t2)
{
char *t;
t = t1;
t1 = t2;
t2 = t;
}
我也試圖通過(&ptr[0], &ptr[1])
,但在這裏它顯示了segmentation fault
。此外,我做了一個字符,*p1 = ptr[0], char *p1 = ptr[1]
,然後通過&p1
和&p2
到swap
,但仍然出現分段錯誤。