c-如何从指针打印内容



我写这个程序是为了用指针测试一些东西。数组中的两个字将在末尾进行交换。

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])

最新更新