最近学习Unix的时候碰到了mode_t umask(mode_t mask)函数。
刚开始的时候把mask设为0022,结果得到的umask为0026。
反复试验后,原因如下:
umask是一个八进制的数,mask参数是一个10进制的数,
10进制的22转化为八进制就是26。上图
或者直接将代码里的十进制%d改为八进制的%o
唉,学艺不精害死人
最近学习Unix的时候碰到了mode_t umask(mode_t mask)函数。
刚开始的时候把mask设为0022,结果得到的umask为0026。
反复试验后,原因如下:
umask是一个八进制的数,mask参数是一个10进制的数,
10进制的22转化为八进制就是26。上图
或者直接将代码里的十进制%d改为八进制的%o
唉,学艺不精害死人