作者caballero (念书念书...)
看板Programming
标题Re: [问题] 请问一个关於read/write的问题
时间Thu Mar 22 20:40:34 2007
※ 引述《Tox (It's up to you)》之铭言:
: 这是一个socket的程式
: 我节录部份
: s是socket descriptor
: 我对於stderr以及stdin和stdout不是很了解
: 他们的path是?或者是什麽情况要用到他们
: 在receive 的部份
: length = read(s, buf, sizeof(buf));
: if (length > 0) {
: write(1, buf, length);
: .....略
: }
: 问题1
: 请问在此的1代表的是stdout吗???
是
: 将资料从buf write到1(stdout?)
是
: 同理 send部分
: while ( (length = read(0, buf, size)) > 0 ) {
: l = write(s, buf, l);
: total += l ;
: }
: 问题2
: 在此的0代表的是stdin吗???
是
: 那这样的话 我看不懂 从stdin read到buf 那stdin里面会是什麽东西
没有东西
因为之前stdin读进来的东西已经塞进buf内了
这时候stdin应该是等待新资料进来的状态
: 问题3
: fprintf(stderr, "socker create error ");
: 那这样 我要去哪看stderr log呢(换句话如果他写到stderr 我怎麽知道)
: 谢谢
直接改成 printf ("xxx error"); 来看比较快啦XD
stdin 0
stdout 1
stderr 2
以上三个都是指fd number (file descriptor number)
建议你查一下read()和write()这两个函数传入的参数型态用法
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.88.177