- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
据我了解,strerror(errno)
返回对应于 errno
的错误的字符串形式.在这种情况下,我是否需要在使用完函数后释放函数的返回结果?
最佳答案
你不仅不需要;你绝不能 .唯一可以传递给free
的东西是指向您通过 malloc
获得的内存的指针或指定返回由 malloc
获得的内存的函数或“好像来自 malloc
”。 strerror
的规范中没有这样的文字,所以传递字符串它返回到 free
会产生未定义的行为。特别是,如果实现使用 malloc
为了在内部获取内存,您将从它下面释放该内存,导致它执行释放后使用或双重释放,这是一些最危险的内存错误类型。
在实践中,strerror
通常从 libc .rodata
返回不可变的字符串或来自 mmap
ped 翻译文件,并且该错误很可能会立即被捕获为崩溃。
关于c - 我需要在 C 中释放 strerror() 的结果吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62272781/
请解释以下程序中发生了什么。 我在程序的开头和结尾检查了 strerror(errno) 返回的地址,并确认它每次都返回相同的地址。然后一旦确定这一点,在第一种情况下我继续将相同的地址分配给 ptr,
我正在尝试创建类似 this 的函数它将打印出与其错误编号相关的错误详细信息,但我收到错误 error: expected initializer before 'strerror'。这是代码 #in
C 函数strerror 返回错误描述字符串,详见here .示例字符串 No such file or directory 问题是这些字符串在哪里定义的?我查看了我的头文件,但没有看到任何东西。 最
我正在将一些代码移植到 Windows,Microsoft 编译器 (Visual C++ 8) 告诉我 strerror() 不安全。 撇开微软提供的所有安全字符串中的烦恼因素不谈,我实际上可以看到
考虑到 fopen() 失败,在下面的代码中: FILE *fp = fopen("file.txt", "w"); if (fp == NULL) { printf("Error occur
有没有strerror -当前内核中的类似功能?我一直没能找到,所以我的想法是没有,但更重要的是,他们有没有讨论过这个问题?我认为它可以减少故障排除时间,因为您不必查找错误代码(不是每个人都记住)并且
我的代码如下: #include #include #include int test(const char *fmt, ...); int main(void) { int i
设置非拉丁语言环境时,IOError.strerror 对我来说在 Python 2.7 中变为非 Unicode: import locale locale.setlocale(locale.LC_
据我了解,strerror(errno)返回对应于 errno 的错误的字符串形式.在这种情况下,我是否需要在使用完函数后释放函数的返回结果? 最佳答案 你不仅不需要;你绝不能 .唯一可以传递给fre
我刚刚浏览了 C99 标准,寻找一些我现在不记得的东西,当我注意到从 strerror() 函数(第 7.12.6.2 节)返回的指针不是t const 限定,即使标准说: The strerror
采用这个简单的程序 #include #include #include int main (void) { printf ("ERROR %d %s\n", ETIMEDOUT, stre
在使用 CRT 函数(如 fopen())后,我可以使用 strerror() 获取 errno 值的文本表示。如果我使用 open() Linux 系统调用而不是 CRT 函数,它也会在失败时设置
在我的代码中的某些地方,我会像这样打印调试消息: int ret = getLinkSpeed(device.getSysName(), linkSpeed); if (ret < 0) {
我尝试过 RTM,但是:给定 ICU UErrorCode ,如何获取相应的错误信息字符串?即,ICU 相当于 strerror(3) . 最佳答案 const char *u_errorName(U
根据 Microsoft 文档,API char * strerror(int errnum) "maps errnum to an error-message string and returns
我正在使用谷歌应用引擎创建一个访问预测 API 的应用程序。当我在网站上更新它时,我能够运行该应用程序,但是我无法在 localhost:8080 上运行它。 我绝对是菜鸟,非常感谢任何帮助。 这是错
我正在使用 Visual Studio 2013 和 ITK 4.3 进行图像分割,但出现错误: \itk4.3.1-64bit\debug\include\itk-4.3\gdcmVR.h(168)
我已经成功cross-compiled the Apache Portable Runtime (APR) for the iPhone ,使用一组 configure scripts使用必要的交叉编
我尝试通过 native 方法访问 android 中的文件,但在调用读取或写入函数后出现“无效参数”。 data_ptr 对齐到 512 字节,它在 java 中声明为字节数组。 JNIEXPORT
我是一名优秀的程序员,十分优秀!