问题标签 [printf]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 如何使用 printf 格式化 unsigned long long int?
输出:
我认为这个意想不到的结果来自打印unsigned long long int
. 你怎么printf()
一个unsigned long long int
?
c - 在 C 中解码 printf 语句(Printf Primer)
我正在努力将 1998 年的一些旧代码带到 21 世纪。该过程的第一步是将 printf 语句转换为QString变量。不管我回头看多少次 printf ,我总是最终忘记一件事或另一件事。所以,为了好玩,让我们一起解码它,为了过去的缘故,并在此过程中为 Stackoverflow 创建第一个小“printf Primer”。
在代码中,我遇到了这个小宝石,
变量 a、b、c、d、e、f、g 将如何格式化?
algorithm - 寻找反转 sprintf() 函数输出的算法
我正在做一个需要解析日志文件的项目。我正在寻找一种快速算法,可以接收这样的组消息:
P1 处的温度为 35F。
P1 处的温度为 40F。
P3 处的温度为 35F。
记录仪停止。
记录仪启动。
P1 处的温度为 40F。
并以 printf() 的形式输出一些东西:
该算法需要足够通用以识别消息组中的几乎所有数据负载。
我尝试搜索这种技术,但我什至不知道要搜索的正确术语。
c - 格式化 long 的 printf 的论点是什么?
该函数采用参数类型,printf
例如%d
or %i
。signed int
但是,我没有看到任何long
有价值的东西。
c - fprintf 返回成功但无法写入现有文件
在我的代码中,fprintf 通过返回 STREAM 中写入的字节数成功返回,但在实际文件中,我写的字符串不存在。
c++ - C++:如何将 fprintf 结果作为 std::string 不带 sprintf
我正在使用一个用 C++ 实现的开源 UNIX 工具,我需要更改一些代码来让它做我想做的事情。我想做最小的改变,希望我的补丁在上游被接受。首选可在标准 C++ 中实现且不会创建更多外部依赖项的解决方案。
这是我的问题。我有一个 C++ 类——我们称之为“A”——它目前使用 fprintf() 将其高度格式化的数据结构打印到文件指针。在它的打印函数中,它还递归地调用了几个成员类的相同定义的打印函数(“B”就是一个例子)。还有另一个类 C 有一个成员 std::string "foo",需要将其设置为 A 实例的 print() 结果。将其视为 A 的 to_str() 成员函数。
在伪代码中:
我应该提到 C 相当稳定,但 A 和 B(以及 A 的其他依赖项)处于不断变化的状态,因此所需的代码更改越少越好。当前的 print(FILE* F) 接口也需要保留。我考虑了几种实现 A::to_str() 的方法,每种方法都有优点和缺点:
将对 fprintf() 的调用更改为 sprintf()
- 我不必重写任何格式字符串
- print() 可以重新实现为: fprint(f, this.to_str());
- 但我需要手动分配 char[]s,合并很多 c 字符串,最后将字符数组转换为 std::string
尝试在字符串流中捕获 a.print() 的结果
- 我必须将所有格式字符串转换为 << 输出格式。有数百个 fprintf() 可以转换:-{
- print() 必须重写,因为我知道没有标准方法可以从 UNIX 文件句柄创建输出流(尽管这个人说这可能是可能的)。
使用 Boost 的字符串格式库
- 更多的外部依赖。呸。
- Format 的语法与 printf() 的不同之处足以令人讨厌:
printf(format_str, args) -> cout << boost::format(format_str) % arg1 % arg2 % etc
使用 Qt 的QString::asprintf()
- 不同的外部依赖。
那么,我是否已经用尽了所有可能的选择?如果是这样,你认为哪个是我最好的选择?如果没有,我忽略了什么?
谢谢。
c - 如何使用“%f”将双精度值填充到具有正确精度的字符串中
我正在尝试使用这样的方法填充具有双精度值的字符串sprintf
:
但精度被削减到小数点后六位。我需要大约 10 位小数来保证精度。
怎样才能做到这一点?
c - 是否有以二进制格式打印的 printf 转换器?
我可以打印printf
为十六进制或八进制数。是否有格式标签可以打印为二进制或任意基数?
我正在运行 gcc。
java - 用于集合或数组的 Java printf 功能
在 python 中,您可以在格式化的打印语句中使用元组,并且在格式化字符串中的指定位置使用元组值。例如:
有没有办法以类似的方式在 java printf 语句中使用任何数组或集合?
我查看了文档,它似乎内置了对日历等某些类型的支持,但我没有看到任何集合。
如果在 java 中未提供此功能,是否有任何 java 习惯用法可用于在这种情况下填充集合,然后使用一种格式字符串(而不是仅嵌套循环)打印来自许多集合的值?
c - 在 C 中打印前导 0
我正在尝试找到一种打印前导的好方法,0
例如ZIP Code。虽然数字将存储为,但有什么好的方法呢?01001
1001
我曾想过使用任一case
语句或if
找出数字的位数,然后将其转换为char
带有额外 's 的数组以0
进行打印,但我不禁认为可能有一种方法可以使用printf
格式语法来做到这一点这让我望而却步。