问题标签 [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.

0 投票
1 回答
29762 浏览

c - 错误:使用未声明的标识符“errno_t”

这是我死的简单虚拟代码:

这令人惊讶地引发了这个错误:

我开始追踪这些痕迹:当编译器看到<...>包含内容时,它会首先查看我在/usr/include哪里找到了errno.h文件。实际上,除了许可证注释之外,它只有一行:

现在,/usr/include/syserrno.h我发现以下几行:

在我发现这个/usr/include/_types_errno_t.h

所以看起来,它就在那里,它是整数类型的别名,也是errno.h-- 的一部分。

那为什么不包括在内?为什么编译器会引发未声明的标识符错误?

提前致谢!


相关信息:


宏变量__STDC_WANT_LIB_EXT1__/usr/include/syscdefs.h以下行中定义:


更新:

正如@PaulR 在评论部分所说:如果我删除-std=c11标志,它会编译。如果包含标志,这与引发的错误一样令人惊讶。所以我用一个子问题扩展了这个问题:

当为编译器指定标准时,它不是errno_tC11 标准的一部分,或者为什么不包含它?

0 投票
1 回答
1489 浏览

c - C中scanf和scanf_s的区别

尽管我的程序提供了所需的输出。有许多警告显示scanf()不应该使用并尝试使用scanf_s()

此警告的可能原因?

所有使用 scanf 函数的程序都会发生这种情况。甚至是简单的数字相加。

0 投票
1 回答
1185 浏览

c - 为什么 fopen_s 在打开文件进行读取时返回 EEXIST (errno 17)

当我执行fopen_s(&fid, FILE_NAME, "r")时,fid为 null 并且errno为 17。
当我尝试打开文件进行读取时,这怎么可能EEXIST出现错误?

0 投票
2 回答
1094 浏览

c - 我在处理多个字符和 scanf_s() 时遇到问题

我试图用来scanf_s()读取多个值,但每次运行程序时,我都会得到

实验室 2.exe 中 0x592AD6AC (msvcr120d.dll) 处的未处理异常:0xC0000005:访问冲突写入位置 0x00000000。

在弹出窗口中。我该如何解决?

0 投票
1 回答
142 浏览

c - 无法让 scanf_s 或 switch 工作

我在使用 scanf_s(); 时遇到了一些问题。函数或 switch 函数,我第一次运行我的代码时,它无法识别正确的字符并循环回到开头,但之后它就可以正常工作了。这是一个简单的计算器。

由于我刚刚开始学习编程,因此可能有一些简单的解决方案,但我找不到它。

所有的文字都是芬兰语,但我希望代码本身是可以理解的。

欢迎所有反馈,因为我渴望了解我应该做什么和不应该做什么。

0 投票
1 回答
115 浏览

c++ - 这个程序有什么问题?

我使用动态内存分配编写了这个简单的冒泡排序程序。我正在使用 VC++ 编译器。

上面的程序有什么问题?编译器显示以下警告。这是什么意思?

请帮我。

0 投票
2 回答
11157 浏览

c - 对“scanf_s”的未定义引用

我有一个课程要快速完成,这需要我能够以某种方式调试代码。为了完成任务,我必须能够运行给我的程序,并使用断点一步一步地指导程序。我们得到的程序是 ATM 的基本视图,并且有许多错误。

scanf_s请不要修复代码中的错误,但是当我不断收到错误“未定义的引用scanf_s”时,有人可以告诉我如何处理我收到的与行相关的错误代码如下:

0 投票
3 回答
419 浏览

c - 在 Code::Blocks 中使用非标准函数

我得到了 Ivor Horton 的《Beginning C》这本书,我已经读到一半了,我很喜欢;到目前为止,一切都很好。我在 Windows 上使用 Code::Blocks 作为我的 IDE,现在我遇到了大约 3 天无法解决的问题。

作者在<string.h>, like中提到了一些“可选”功能,strnlen_s()还说这些在新标准 C11 中可用(这本书是 2013 年的;我不知道 C11 到底有多新),他还给出了一篇将确定“C 编译器附带的标准库是否支持这些可选函数”的代码。这是代码:

所以我运行代码来检查 Code::Blocks 中的 GCC 是否存在,并确定它不存在。这本书既不推荐编译器也不推荐IDE;我自己学习了 Code::Blocks 和 GCC,因为这是我在大学时做的考试,所以我认为我应该熟悉环境。

问题是,我不知道如何“解决”这个问题,因为strnlen()它不起作用,strnlen_s()不起作用,还有很多其他的,而且我真的无法继续阅读一本书。不是我需要它们,或者我不能以任何其他方式做到这一点(strlen()工作得很好),但知道如何使用非标准函数会很好。

0 投票
1 回答
81699 浏览

c++ - 如何从 fopen 到 fopen_s

Visual Studio 抱怨 fopen。我找不到更改它的正确语法。我有:

第一个参数的其余部分是什么?

0 投票
2 回答
575 浏览

c - C 程序停止使用 scanf_s

我在编程方面相当新,我在一段代码上遇到了麻烦。我正在尝试输入一个单词,但是当我运行程序并输入该单词时它停止工作。

这是代码:

我尝试将 a[] 的大小设置为 20 并使用 %19s 作为另一个问题的建议,但这也不起作用。

编辑 1. 改为char a[]= "";char a[20]= {0};没有用。

编辑 2. 添加 sizeof(a) 并且代码有效。此外,我删除了 {0},但我不知道这是否有所作为。

最终代码: