#include <unistd.h> 的作用以及windows向下如何替换啊

724 篇文章 ¥119.90 ¥299.90
unistd.h是UNIX系统中的一个标准头文件,包含了许多系统服务的函数原型,如read、write和getpid等。在Windows中,unistd.h的功能可以由不同的API实现,如使用ReadFile和WriteFile替代read和write,使用Sleep代替usleep。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由字面意思,unistd.h是unix std的意思,是POSIX标准定义的unix类系统定义符号常量的头文件,

包含了许多UNIX系统服务的函数原型,例如read函数、write函数和getpid函数。

参考自 http://hi.baidu.com/w_dalu/item/e8d29860374ae02369105b11

unistd.h在unix中类似于window中的windows.h

#ifdef WIN32
 #include <windows.h>
 #else
 #include <unistd.h>
 #endif

unistd.h含有的常量与函数:

ssize_t read(int, void *, size_t); // 读取文件使用
int unlink(const char *);
ssize_t write(int, const void *, size_t); // 写文件
int usleep(useconds_t); // 进程休眠,单位为微妙
unsigned sleep(unsigned); // 进程休眠,单位为秒

int access(const char *, int); // 获取文件的权限
unsigned alarm(unsigned);
int chdir(const char *);
int chown(const char *, uid_t, gid_t);
int close(int); // 关闭文件
size_t confstr(int, char *, size_t);
void _exit(int);
pid_t fork(void);

NULL // Null pointer
SEEK_CUR // Set file offset to current plus offset.
SEEK_END // Set file offset to EOF plus offset.
SEEK_SET // Set file offset to offset.

许多在Linux下开发的C程序都需要头文件unistd.h,但VC中没有个头文件,
所以用VC编译总是报错。把下面的内容保存为unistd.h,可以解决这个问题。
/** This file is part of the Mingw32 package.
* unistd.h maps (roughly) to io.h
*/

#ifndef _UNISTD_H
#define _UNISTD_H
#include <io.h>
#include <process.h>
#endif /* _UNISTD_H */

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值