问题标签 [unistd.h]

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 回答
4464 浏览

c - 时钟、rdtsc 和 CLOCKS_PER_SEC

我正在尝试使用 asm 和 rdtsc 实现我自己的 clock() 版本。但是我很不确定它的返回值。是循环吗?还是微秒?我也对 CLOCKS_PER_SEC 感到困惑。这怎么可能是恒定的?

是否有任何一种公式可以将这些值关联起来?

0 投票
1 回答
307 浏览

c - 获取调用程序的原始位置

有没有办法知道程序最初在 C 中生成的目录?我希望我的程序知道它在计算机中的位置。我已经尝试使用_getcwd()in direct.h。我也尝试getcwd()使用unistd.h. 但这就是问题所在。如果我在我的程序目录中添加了一个 PATH,函数_getcwd()getcwd()路径将返回我调用程序的路径。因此,如果我在 dekstop 中运行程序,它将返回桌面的路径。我已经尝试过使用这种方法,但它不能解决问题。它返回调用路径的值。我想知道使用什么函数来知道程序的路径,而不是程序被调用的路径。我应该使用什么功能?

0 投票
1 回答
1851 浏览

c - glibc 标准库中的 libc_hidden_​​proto 是做什么的?

我试图在其中查找该getpgrp()函数的原型,unistd.h但找不到它。该文件中唯一包含getpgrp的行是该行libc_hidden_proto (tcgetpgrp),我假设这是一个宏,但我不知道它的作用。

我用谷歌搜索,但在网上找不到任何关于libc_hidden_proto实际作用的解释。任何关于该宏在 glibc 中的用途的解释都将不胜感激。

0 投票
1 回答
84 浏览

c - 我正在为披萨配送系统编写这段代码。从命令提示符运行时,它显示错误。我应该如何运行它?

我正在使用命令行参数和界面构建这个披萨程序。它应该从参数中返回成分。

在 Windows 中使用命令提示符运行此程序时:

程序 -d 现在 -t

它返回一个错误:

无效选项:现在

我应该如何运行这个程序,为什么会出现这个错误?

0 投票
1 回答
484 浏览

c++ - 包含哪个 unistd.h?(c++)

我出于教育目的探索这些库时遇到了文件 os_defines.h ,该文件在我的 MacBoook 上位于 usr/include/c++/4.2.1/bits 中。在那里我找到#include <unistd.h>了,所以我对该文件进行了快速查找搜索,并找到了不少于 7 个该名称的文件!这些文件不是副本,并且没有一个文件位于与 os_defines.h 相同的文件夹中 - 那么究竟包含哪个文件?

我觉得我错过了一些明显的东西,但我是一个新手,如果有人能照亮我,我将不胜感激。

0 投票
1 回答
349 浏览

c - 使用 getcwd 一致地在 C 字符串中获取空值

我正在尝试制作一个简单的程序,只需将您的工作目录写入文件,而我终其一生都无法弄清楚我做错了什么。无论我做什么,在我调用 getcwd() 之后,我的缓冲区都会存储空值。我怀疑这可能与权限有关,但据称,Linux 现在做了一些魔法来确保 getcwd 几乎永远不会出现访问问题(关键字,“几乎”)。任何人都可以在他们的机器上测试它吗?还是我遗漏了一个明显的错误?

编译gcc main.c(文件名为“main.c”)

编辑:正如不同的海报所提到的, sizeof(loc) 正在采用 char 指针的大小,而不是分配给该指针的空间量的大小。将其更改为 malloc(sizeof(char)*1000) 并且一切正常。

0 投票
1 回答
638 浏览

c - Sleep()函数在C中没有正确计时

我一直在编写一些简单的东西,比如打印语句,但我想让我的处理器休眠,以免同时有太多的打印语句。我使用了库unistd.h并使用了函数sleep()。我遇到的问题是,当我要求 sleep 函数睡眠少于一秒时,例如 0.9 打印的语句数量与我根本没有使用函数sleep()一样。如果我让它睡眠超过一秒钟,它工作正常,但我不想要一秒钟的睡眠,我想要更少。

善待您阅读和/或帮助。

0 投票
1 回答
848 浏览

c - 在c中从文件中获取输入时出错

我想从 C++ 中的文件中获取输入。我正在使用 Visual Studio 2015。我用于从文件中获取输入的示例代码函数是:

我的输入文件格式如下:

但是当我编译时,我得到一个错误,如:标识符'getcwd'未定义。有什么办法可以替换这个函数,让我得到同样的输出?

0 投票
2 回答
1252 浏览

c++ - 由于地址错误,执行失败

我对 exec 有一个严重的问题。我已经尝试了 list(execl) 和 array(execv) 这两个选项,但问题仍然存在。我将给出我尝试拨打电话的函数。

}

aparams[0] 包含一个带有可执行文件名称的字符串,比如说“test”。我编译了 -> g++ test.cpp -o test -> 所以我得到了这个可执行文件。aparams 的其他位置包含测试程序的一些参数。

因此,测试永远不会运行(当我从命令行运行它时没问题)并且 perror 显示消息“exec 中的问题是:错误地址。”

我也尝试过强制转换所有参数(const char*),但没有任何改变。是争论的问题吗?还是可执行文件的问题?

0 投票
1 回答
760 浏览

c - Unistd read() 最大大小

在以下代码段中,无论我输入多长时间(编辑:我正在复制并粘贴一个随机字符串),比如说一个包含 9998 个字符的字符串,read() 在 i = 4095 时停止。它声明它已读取在 EOF 字符中,但我的字符串没有 EOF 字符(例如,我尝试了一个 9998 'a's 的字符串)。返回值还表明 read() 没有错误。为什么 read() 只读取 4095 字节?

编辑:为了澄清, read() 并没有从字面上说明它以 EOF 字符读取,每个https://linux.die.net/man/2/read read() 在经过 EOF 时返回 0。