open()
https://blog.csdn.net/jiahehao/article/details/1841776侵删
另外在open函数的参数列表中可以直接加入mkdir 的参数
S_IRWXU 00700权限,代表该文件所有者拥有读,写和执行操作的权限
S_IRUSR(S_IREAD) 00400权限,代表该文件所有者拥有可读的权限
S_IWUSR(S_IWRITE) 00200权限,代表该文件所有者拥有可写的权限
S_IXUSR(S_IEXEC) 00100权限,代表该文件所有者拥有执行的权限
S_IRWXG 00070权限,代表该文件用户组拥有读,写和执行操作的权限
S_IRGRP 00040权限,代表该文件用户组拥有可读的权限
S_IWGRP 00020权限,代表该文件用户组拥有可写的权限
S_IXGRP 00010权限,代表该文件用户组拥有执行的权限
S_IRWXO 00007权限,代表其他用户拥有读,写和执行操作的权限
S_IROTH 00004权限,代表其他用户拥有可读的权限
S_IWOTH 00002权限,代表其他用户拥有可写的权限
S_IXOTH 00001权限,代表其他用户拥有执行的权限
体现在代码中就如下
int fp = open(filePath.c_str(), O_RDWR | O_APPEND | O_CREAT, S_IRWXU | S_IRGRP | S_IXGRP);
c_str()
https://blog.csdn.net/JIEJINQUANIL/article/details/51547027
将字符串string型 转换成 char 数组型。
lseek()
所有打开的文件都有一个当前文件偏移量(current file offset),以下简称为 cfo。cfo 通常是一个非负整数,用于表明文件开始处到文件当前位置的字节数。读写操作通常开始于 cfo,并且使 cfo 增大,增量为读写的字节数。文件被打开时,cfo 会被初始化为 0,除非使用了O_APPEND 。
if (-1 == lseek(fp, lOffset, SEEK_SET))
{
cout << "lseek" << endl;
return -1;
}
fstream的用法
https://blog.csdn.net/kingstar158/article/details/6859379
析构函数
http://www.runoob.com/cplusplus/cpp-constructor-destructor.html
类的析构函数是类的一种特殊的成员函数,它会在每次删除所创建的对象时执行。
析构函数的名称与类的名称是完全相同的,只是在前面加了个波浪号(~)作为前缀,它不会返回任何值,也不能带有任何参数。析构函数有助于在跳出程序(比如关闭文件、释放内存等)前释放资源。
OpenMP共享内存并行编程详解
https://www.cnblogs.com/liangliangh/p/3565234.html