原因是打开文件语句:
if ((fd = open(path, O_RDWR | O_CREAT | O_TRUNC, 777)) < 0)
写成了:
if (fd = open(path, O_RDWR | O_CREAT | O_TRUNC, 777) < 0)
使fd结果为一个布尔值,并且文件打开成功,返回值大于等于0,因此布尔值为false,转换成int就变成0了。
原因是打开文件语句:
if ((fd = open(path, O_RDWR | O_CREAT | O_TRUNC, 777)) < 0)
写成了:
if (fd = open(path, O_RDWR | O_CREAT | O_TRUNC, 777) < 0)
使fd结果为一个布尔值,并且文件打开成功,返回值大于等于0,因此布尔值为false,转换成int就变成0了。