标签: printf

当没有足够的参数传递时,printf会做什么?

假设我使用了printf没有传递足够的参数来匹配格式说明符:

#include <stdio.h>

int main(void) {
    printf("missing argument: %s\n");
}
Run Code Online (Sandbox Code Playgroud)

对结果有什么保证吗?
在我的机器上,根本没有打印.
总是这样,或者是否有可能用解析的说明符打印字符串?

例如: missing argument: %s

要么: missing argument:

c printf undefined-behavior format-specifiers

-6
推荐指数
1
解决办法
518
查看次数

遗憾地,我的程序中称为printf的打印格式无法运行

我真的很沮丧因为我试图使用这段代码创建一个程序:

printf("hello world");
Run Code Online (Sandbox Code Playgroud)

但是它在日志中没有显示Hello World,有什么问题?

c printf

-8
推荐指数
1
解决办法
597
查看次数

在C++中使用printf输出浮点数

我正在尝试输出一个浮点数

printf(theFloat);
Run Code Online (Sandbox Code Playgroud)

但是,这给了我以下错误。

““float”类型的参数与“const char *”类型的参数不兼容”

我不确定为什么这不起作用,我查看了一下,发现人们使用printf格式化浮点数...是否还有另一种用于浮点数等的打印方法?

c++ floating-point printf

-8
推荐指数
1
解决办法
3173
查看次数

printf是否会更改变量?

我不确定在printf语句中增加变量是否将有价值的东西保存为变量。

int x = 0;

printf("x=%d\n", ++x);
printf("x=%d\n", x);
Run Code Online (Sandbox Code Playgroud)

输出是

x=1
x=0
Run Code Online (Sandbox Code Playgroud)

要么

x=1
x=1
Run Code Online (Sandbox Code Playgroud)

我从未学习过C的基础知识,想知道它如何与C ++匹配。

我确实了解pre / post的增量,但是我担心如果在函数范围内对其进行增量操作,则在第一个printf()中执行++ x不会保存。

c printf increment

-8
推荐指数
1
解决办法
671
查看次数

-8
推荐指数
1
解决办法
139
查看次数