Error: expected expression before '%' token

Error: expected expression before '%' token

我不确定是什么导致了这行代码中的错误

printf(%d=12 * %d + %d "\n", a, &b, &c); }

错误状态 "expected expression before '%' token" 但我不确定它指的是哪个字符串表示或“%”。

错位的双引号。没有格式字符串,因为 ( 之后的第一个字符不是 ",而是 %.

printf("%d=12 * %d + %d\n", a, b, c);

正如 BLUPIXY 正确指出的那样,您还应该避免将地址 &b&c 打印为带有 %d 的整数。如果你真的想打印地址,你必须使用 %p 和 ptr-to-void,即:

printf("%d=12 * %p + %p\n", a, (void *)&b, (void *)&c);

查看 a、b 和 c 的声明会很有帮助。