1

我正在使用 Visual Studio 2013 创建一个 C 程序。

我想测试格式字符串参数。

我唯一想做的是以下

int main(int argc, char *argv[]){
    printf("Test: %2$s\n","asdf","2asdf");
    return 0;
} 

如果我说它Test: %s使用第一个参数。但我希望它使用第二个参数。但我的输出是Test: $s

我究竟做错了什么?是否有另一种方法来指定要使用的第二个参数?

4

1 回答 1

2

%2$s用于指定第二个参数的格式说明符printf不是标准 C 的一部分,而是POSIX 扩展。Visual Studio 不支持它。

于 2014-01-14T08:30:07.667 回答