linux调用一个函数失败 打印错误,write函数出现错误invalid argument

xupei040700428 于 2011-10-30 11:20:37发表:

我把程序贴出来如下:

int set_light(char level)

{

char data, ch;

int fd;

fd = open("/sys/class/lcd/brightlightness",O_RDWR);

if(fd < 0)

printf("open fail\n");

if(read(fd, &ch, 1) < 0)

printf("read fail\n");

printf("ch = %d\n",ch);

data = level;

if(write(fd, &data, 1) < 0)

printf("write fail\n");

printf("errno=%s\n",strerrno(errno));

}

可以读到数据,并且通过adb shell cat /sys/class/lcd/brightlightness 看到读到的值与打印出的ch值一致,

但是运行程序,会打印出write fail的log,并且errno错误为invalid arguments.

不明白这个错误是怎么回事,请指教

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值