C - UNIX - 检查 getpriority() 是否返回错误

标签 c unix operating-system system

我想知道如何检查 getpriority() 返回的值 -1 是错误值还是合法值。来自手册:

RETURN VALUE

  Since  getpriority() can legitimately return the value -1, it is neces-
  sary to clear the external variable errno prior to the call, then check
  it  afterwards  to  determine  if -1 is an error or a legitimate value.

我真的不知道如何使用变量 errno,因为我总是使用 perror(...) 来显示错误...

最佳答案

说到做到!清除 errno 的值,然后调用,然后进行检查。

#include <errno.h>
#include <sys/time.h>
#include <sys/resource.h>

errno = 0;
int val = getpriority();
if (val == -1 && errno) {
  // we have an error!
}

关于C - UNIX - 检查 getpriority() 是否返回错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20126994/

相关文章:

unix - 使用 awk 选择特定单词,同时忽略其他单词

Java 将 csv 从服务器导出到可能不在同一操作系统上的客户端

操作系统可以为两个不同的进程生成相同的逻辑地址吗?

linux - 如何计算 meminfo 中的所有内存?

java - Backspace\b 关于操作系统的 Chacacter 作用域?

c - 如何为列表重用代码(或如何为不同类型的结构列表处理 2 个不同的函数)

c - scanf 不等待输入

c++ - 在多线程iocp服务器中将连接用户列表发送给新连接的用户

c - 如何有效地将十六进制编码的字符串转换为 C 中的字符串

c - 进程、fork、管道程序...我哪里出错了?