void writeFile()
{
const char * filePath = "numbers.txt";
int fd = open(filePath,O_RDWR);
int index,numAdd;
index = validIndex();
numAdd = validNumberToAdd();
void *addr = mmap(nullptr,1000,PROT_WRITE, MAP_SHARED| MAP_ANONYMOUS, fd,0);
char *p = (char *)addr;
p[index] = numAdd;
cout << "wrote " << numAdd << endl;
close(fd);
}
因此,当我手动将数据放入其中时,我能够读取numbers.txt中的数据。但是当我尝试使用此函数写入数据时,它将删除文件中的所有数据并将其留空。
预期的功能应该是我能够打开一个名为numbers.txt的文件,选择一个索引并将numAdd中的值写入文本文件。然后,当我关闭它并再次运行时,它会将数据存储到其中。
其余的代码是在这个不需要的pastebin上但是这个写入功能是我的主要问题。 https://pastebin.com/UYfx6QdP