在printf C中写"%d"

fms*_*msf 2 c syntax

这段代码的正确语法是什么:是:

printf("printf(\"\%d\",%s);", some_var);
Run Code Online (Sandbox Code Playgroud)

要么

printf("printf(\"%%d\",%s);", some_var);
Run Code Online (Sandbox Code Playgroud)

或者是其他东西?

Ben*_*igt 5

第二个. %d由printf定义,而不是C语言,所以你需要使用printf来转义它%%,而不是字符转义.

带有字符转义序列的更复杂示例:

printf("printf(\"%%d\\n\",%s);\n", some_var);
Run Code Online (Sandbox Code Playgroud)