Embedded 版 (精华区)
发信人: Zinux (Linux技工), 信区: Embedded_system
标 题: 应用层读数据程序和写数据程序
发信站: 哈工大紫丁香 (2001年10月26日18:44:17 星期五), 站内信件
发信人: clown (梧桐叶), 信区: UKP
标 题: 应用层读数据程序和写数据程序
发信站: UNIX编程 (2001年10月26日11:33:15 星期五), 站内信件
//app_read.c
#include <unistd.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/fcntl.h>
#include <errno.h>
#define DEV_NAME "/dev/vir_chr_dev"
int main()
{
int fd;
int ret;
int ret;
int n = 0;
char buf[32];
errno = 0;
if((fd = open(DEV_NAME, O_RDONLY)) < 0) {
perror("open");
return -1;
}
while(n < 1000) {
if((ret = read(fd, buf, 32)) < 0) {
perror("read");
break;
} else if(ret == 0) {
printf("End of file\n");
break;
} else {
buf[ret] = '\0';
printf("read: %s\n", buf);
}
//sleep(1);
n++;
}
close(fd);
close(fd);
return 0;
}
//app_write.c
#include <unistd.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/fcntl.h>
#include <errno.h>
#define DEV_NAME "/dev/vir_chr_dev"
int main()
{
int fd;
int n = 0;
char buf[32];
errno = 0;
if((fd = open(DEV_NAME, O_WRONLY)) < 0) {
if((fd = open(DEV_NAME, O_WRONLY)) < 0) {
perror("open");
return -1;
}
while(n < 1000) {
snprintf(buf, 32, "hello %d", n);
printf("write: %s\n", buf);
if(write(fd, buf, 32) < 0) {
perror("write");
break;
}
//sleep(1);
n++;
}
close(fd);
return 0;
}
--
puke!
技工而已
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.239.152]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.007毫秒