[问题]各位大哥小弟刚学编程有问题请教跪谢了

软件和网站开发以及相关技术探讨
回复
ghhg11
帖子: 4
注册时间: 2006-09-27 23:06

[问题]各位大哥小弟刚学编程有问题请教跪谢了

#1

帖子 ghhg11 » 2006-09-27 23:12

小弟刚学编程,有一部分小弟看不懂,请教各位大哥!!跪谢啊呵呵
int mode=0666;
char *end;
int args;
if(argc<3)usage();
path=argv[1];
if(!strcmp(argv[2],"b")){
mode|=S_IFBLK;
args=5;
}else if(!strcmp(argv[2],"c")||!strcmp(argv[2],"u")){
mode|=S_IFCHR;
args=5;
}else if(!strcmp(argv[2],"p")){
mode|=S_IFIFO;
args=3;
其中mode |=S_IFBLK;这句话根本就不知道有什么作用,路过的各位大哥麻烦指导一下啊 :roll: :o :wink:
qingsmy
帖子: 5
注册时间: 2005-12-15 23:30

#2

帖子 qingsmy » 2006-09-28 23:09

应该是将mode置位, 估计S_IFBLK/S_IFCHR/S_IFIFO分别对应8进制的0666中的一位。

建议将代码贴全一些,这样其他人比较容易理解代码的逻辑。
头像
fiftymetre
帖子: 37
注册时间: 2006-09-29 15:06

#3

帖子 fiftymetre » 2006-09-30 13:50

那个或运算,是为了识别不同的参数指令的...
回复