我試圖創建一個文件並通過系統調用操作向其複製一個256 MB大小的隨機字符,我無法理解我應該如何去做。使用系統調用操作創建文件並寫入隨機字符
很顯然,我需要的文件是txt文件,所以當我試圖用與O_RDWR標誌科瑞功能,但它並沒有創造一個txt文件,它是未知的東西,我無法打開。我在網上看到了一個PERMS的東西,我不明白。這是我寫到目前爲止:
char buff[1024*1024];
j=0;
for (i=0;i<(1024*1024);i++){
if (j==256) j=0;
buff[i]='a'+j;
j++;
}
fd= open(argv[1], O_RDWR);
if (fd < 0) {
fd= creat(argv[1],O_RDWR);
for (i=0; i<256; i++) {
write(fd, buff, 1024*1024);
}
它確實創建文件,但它是不可訪問,這是大小爲0
那麼,包含所有256個可能的8位字節模式的文件看起來不像文本文件,因爲值0-31和> = 128(假設ASCII)不是真正的文本文件, ish ... – twalberg