问题标签 [tr24731]
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 - 对“strcpy_s”的未定义引用无法编译
我遵循这本书,无法编译这个例子。有什么建议么?
错误:
c - 是否需要对 C11 中的附录 K 的支持才能实现符合要求?
在回答使用一些我认为不是标准 C 的函数 (sscanf_s
和sprintf_s
) 的问题时,Daniel Fischer 提请我注意,这些函数在附录 K 中定义。
我普遍理解规范意味着它有助于定义标准。但是,传统上,C 标准的附件仅被视为提供信息。附录 K 在 C11 标准中被标记为规范性的。它定义了“安全”功能。
这是否意味着不提供这些函数的编译器不符合 C11 标准?
我只有 C11 标准草案,但它声明附件 K 是规范性的,但标准的库部分没有提及附件 K 中讨论的功能。运行时约束定义中的注释似乎暗示附件 K 定义了一个扩展。
规范性附件是否仅定义可选扩展?
c - 可选 C11 Annex K 函数的手册页
由于 C11 引入了一些新功能,例如
如何在 Ubuntu 12.04 上找到这些函数的手册页?
c - 支持 strerrorlen_s 和 strerror_s 函数的最旧版本的 gcc/glibc 是什么?
strerrorlen_s
即使我定义了__STDC_WANT_LIB_EXT1__
1 ,我也无法在 gcc 4.7.2 中使用。
c - 使用字符串的简单程序
我不知道下面的代码有什么问题。也许scanf_s
不会扫描字符串名称。
我改变了它,但它仍然不起作用:
是的,以下工作谢谢!!!!!!!
c++ - fopen_s 如何比 fopen 更安全?
我正在研究Windows
平台的遗留代码。当我在中编译代码时VS2013
,它会给出以下警告:
错误 C4996:“
fopen
”:此函数或变量可能不安全。考虑fopen_s
改用。要禁用弃用,请使用 _CRT_SECURE_NO_WARNINGS。详情请参见在线帮助。”
它也会给出类似的警告sprintf
。我知道sprintf_s
由于缓冲区溢出,它比 sprintf 更安全。
但是fopen_s怎么能比 更安全fopen
,因为fopen
不接受缓冲区,所以没有缓冲区溢出的机会。任何人都可以提供一个fopen
不安全且fopen_s
安全的案例吗?
c++ - Visual Studio 中的“wcs”、“_w”和“_mbs”前缀
对于使用/不使用 wcs/_w/_mbs 前缀定义的函数的差异,我有点困惑。
例如:
- fopen(),_wfopen()
在 msdn 上给出:
fopen 函数打开由文件名指定的文件。_wfopen 是 fopen 的宽字符版本;_wfopen 的参数是宽字符串。否则,_wfopen 和 fopen 的行为相同。
我只是怀疑是否存在与添加“_w”前缀相关的窗口的任何平台依赖性。
- strcpy(),wcscpy(),_mbscpy()
在 msdn 上给出:
wcscpy 和 _mbscpy 分别是 strcpy 的宽字符和多字节字符版本。
再次怀疑添加“wcs”或“_mbs”是否取决于平台。
编辑:
- WideCharToMultiByte 函数是否也依赖于平台?
WideCharToMultiByte 不是 C 运行时函数,它是 Windows API,因此它依赖于平台
- 同样wcstombs_s 函数也依赖于平台吗?
它是非标准的,但在 C11 附录 K 中已标准化。
c - scanf 和 scanf_s 的区别
scanf
和 和有什么不一样scanf_s
?在大学里,我被教过并且正在使用scanf
,但在我的个人计算机上,Visual Studio 不断发送此警告。
而且我必须全部更改scanf
为,scanf_s
否则程序将无法构建。(我正在使用 Visual Studio 2013)
c - 使用 C scanf_s 的字符串输入
我一直试图自己寻找答案,但我找不到。我想插入编程的一部分,它读取像“Hello”这样的字符串并存储并可以在我想要的时候显示它,这样就可以printf("%s", blah);
生成Hello
.
这是给我带来麻烦的代码部分
我知道那printf
不是问题;在提示后输入某些内容后程序崩溃。请帮忙?