我正在使用 Visual Studio 2013 创建一个 C 程序。
我想测试格式字符串参数。
我唯一想做的是以下
int main(int argc, char *argv[]){
printf("Test: %2$s\n","asdf","2asdf");
return 0;
}
如果我说它Test: %s
使用第一个参数。但我希望它使用第二个参数。但我的输出是Test: $s
我究竟做错了什么?是否有另一种方法来指定要使用的第二个参数?
我正在使用 Visual Studio 2013 创建一个 C 程序。
我想测试格式字符串参数。
我唯一想做的是以下
int main(int argc, char *argv[]){
printf("Test: %2$s\n","asdf","2asdf");
return 0;
}
如果我说它Test: %s
使用第一个参数。但我希望它使用第二个参数。但我的输出是Test: $s
我究竟做错了什么?是否有另一种方法来指定要使用的第二个参数?
%2$s
用于指定第二个参数的格式说明符printf
不是标准 C 的一部分,而是POSIX 扩展。Visual Studio 不支持它。