问题标签 [conversion-specifier]
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++ - sscanf(s, "%u", &v) 匹配有符号整数
在 Cppcheck 抱怨"%u"
扫描到int
变量的格式说明符错误之后,我将格式更改为"%d"
,但是在提交更改之前再次查看它时,我认为其目的可能是防止负面输入。我写了两个小程序来看看区别:
说明符 %d
说明符 %u
结果)
令人惊讶的是,两个转换说明符都接受了这个符号:
我查看了 cppreference.com 上的文档。对于 C ( scanf, fscanf, sscanf, scanf_s, fscanf_s, sscanf_s - cppreference.com ) 以及 C++ ( std::scanf, std::fscanf, std::sscanf - cppreference.com ),"%u"
转换说明符的描述是相同(强调我的):
匹配无符号十进制整数。
数字的格式与 strtoul() 预期的格式相同,基本参数的值为 10。
观察到的行为标准是否合规?我在哪里可以找到这个文档?
[更新] 未定义的行为,真的,为什么?
我读到它只是 UB,好吧,为了增加混乱,这里是将值声明为unsigned
https://ideone.com/nNBkqN的版本- 我认为分配-1
仍然是预期的,但是 "%u" 显然仍然匹配符号:
结果:
google-analytics - 跟踪多个 Google Analytics(分析)转化
对于我们的招聘网站,我们为每位员工提供了与其员工编号相关联的唯一网址。然后,他们可以将他们的唯一 URL 提供给他们的个性化页面。想知道是否有一种简单/最佳的方法来跟踪每个员工的表单生成了多少提交。ie Todd 已经通过他的唯一 URL 等提交了 20 份表单。
c++ - put_time 是否有一个转换说明符,该说明符输出一个月中的个位数天数而没有前面的字符
put_time
提供 2 个转换说明符用于输出月份中的某天:
%d
: "月份中的某一天,零填充 (01-31)"%e
:“月份中的日期,空格填充(1-31)”
请注意,这些转换说明符都不允许我输出一个月中未填充的日期。因此,例如,tm tmb
如果我想将月份中的某天输出为:
2018 年 2 月 8 日
我可以做:cout << put_time(&tmb, "%b%e '%y")
但是在 10日将输出:
2018 年 2 月 10 日
因此,我必须做 janky:cout << put_time(&tmb, "%b ") << tmb.tm_mday << put_time(&tmb, " '%y")
是否有一个转换说明符可用于在一次put_time
调用中获取所有内容?
c - 为什么我的功能不起作用,我需要制作一个距离计算器
距离计算器,一切正常,直到程序达到功能,而不是程序停止运行。我尝试从我在主函数中调用函数的行中删除void
and s,但仍然没有。int
c - 当 printf 一个字符串时,我们没有使用 *. 为什么?
在 c 编程中,当我们打印一个字符串时。我们没有使用 * 。但是当使用 printf 打印数字时,我们使用 *. 那么它是如何理解的,我正在打印一个字符串或整数。理解使用 %s 运算符吗?
附上示例代码
c - %PRId 和 %d 格式字符有什么区别?
考虑以下代码:
什么时候%d
用比较好,什么时候用比较好"%"PRId32
?这两种格式字符有何不同?这与int32_t
您的硬件/机器上的类型定义方式有关吗?
c - 如何解决 GCC 编译 [-Wformat] 警告?
我正在使用这种方法将十六进制字符串转换为字节数组。代码是正确的。在编译此代码时,我收到低于编译警告。有什么办法可以解决吗?
编译警告:
c - C %*s 中的字符串格式
我在某处看到了 C 中的一段代码
如果我们介绍
“名称:史密斯组:7”
它等待我们引入另一个值。真奇怪。到底发生了什么,%*s %50s %*s
意味着什么。我%*s
之前看过,但从未在阅读字符串之前和之后放置过。
python - 如何编写多种不同的数据类型
我正在用 python 为我的班级做一个“创建密码”项目。我刚刚学习了常见的转换说明符,他们希望我在我的程序中使用它。
到目前为止,我被困在“第二个密码”上,见下面的代码:
我需要生成第二个密码,如:6yellow6 我的问题是我无法弄清楚如何在没有空格的情况下使用 % 转换。请帮忙!