open函數打開創建文件一般有幾種方式:
1)第一種情況下是通過指定路徑:
open =("/tmp/text..c",O_RDWR|O_CREAT|O_APPEND,0666);
這樣就會在/TMP文件目錄下就會自動創建了text.c了文件
2)通過int mian (int argc,char *argv[])在shell終端輸入命令,指定文件,會在缺省情況下自動創建不要自定文件路徑
open = (argv[1],O_RDWR|O_CREAT|O_APPEND,0666);
3)對於文件路徑名,其實在計算機中也以字符串的形式存放在系統緩存中,這樣我們就可以定義一個字符串數組來變相的創建文件,還可以通過fgets函數通過標準輸入來創建打開文件,但是這裏要注意的是對於標準輸入,系統會在字符串尾部默認添加‘\n'這樣改變了BUF中的文件路徑,我們就要在fgets輸入的buf中strlen(buf)-1來去除’\n'
具體代碼如下:
#include
#include
#include
#include
#include
#include
#include
int main ()
{
char buf[40];
// char buf [40] ="/mnt/hgfs/Linux/text/kano.c";
fgets(buf,40,stdin);
buf[strlen(buf)-1] = '\0';
puts(buf);
open (buf,O_RDWR|O_CREAT|O_TRUNC,0666);
return 0;
}