我写这个程序是为了用指针测试一些东西。数组中的两个字将在末尾进行交换。
int main(({
char * word2 [] = { "LAGER" , "GERALD" };
char * temp = NULL;
temp = word2[0];
word2[0] = word2[1];
word2[1] = temp;
printf("%c n" , *word2[1]);
return 0;
}
我现在想在他们交换后打印第二个单词,但它只打印第一个字母,而不是整个单词。如何打印整个单词?
printf 的此调用
printf("%c n" , *word2[1]);
输出存储指向字符串文字的指针的数组的第二个元素的第一个字符。
也就是说,由于数组的声明,表达式word2[1]
具有类型char *
,则表达式*word2[1]
具有类型char
,并且使用转换说明符%c
的函数printf
输出字符。。
而是写入
printf("%sn" , word2[1])