关于c语言整型变量使用%s,地址符需要加双引号的问题。

#include<stdio.h>
#define SIZE 4

int main()
{
    int some_data[SIZE] = { 1492, 1066. };
    int i;

    printf("%2s%14s\n", "i", "some_data[i]");
    for (i = 0; i < SIZE; i++)
        printf("%2d%14d\n", i, some_data[i]);
    
    return 0;
}

想问一下,为什么第一个printf后面的整型变量i和some_data[i]。需要加双引号?

printf("%2s%14s\n", "i", "some_data[i]");

这样写输出的是"i"和 "some_data[i]"两个字符串,而不是上面定义的值
这样写只是打印一个类似于表头的东西。为了让格式看起来比较清晰
i some_data[i]
0 1492
1 1066
这样的