c中使用%s格式输出时的坑

问题描述:今天写的一个程序数组声明为int s[MAX];当使用printf("%s\n", s);输出时,只输出了数组中的第一个元素。

解决方法:将数组的声明改为char s[MAX];之后输出才正常。

总结:%s格式输出是用来连续输出字符数组中的字符的,遇到'\0'结束输出,不能用于整型数组,所以如果数组中的元素不是char类型,则输出会出错,只会输出数组的第一个元素。

问题:为什么会输出整型数组的第一个元素