2014-02-11 76 views
0

我有一個簡單的問題,如果任何人都可以回答它。我現在開始使用Ubuntu,並且正在學習環境,儘管我正在使用Windows。在Windows上,如果我想創建並寫入文件,我會做:如何使用C文件I/O在Ubuntu上創建文件

FILE *fp; 
fp=fopen("c:\\test.txt", "w"); 
fprintf(fp, "Testing...\n"); 
fclose(fp); 

當使用Ubuntu我應該擺在的fopen()的參數,說我希望有我的桌面上創建的文件。我的電腦名稱是「root1」。對不起,如果這看起來像一個愚蠢的問題。

u中的簡單方式
+0

這將工作,因爲它是在Ubuntu的。只要確保文件名是正確的。例如,如果您要操作的文件名稱爲「xyz.txt」並位於您的主文件夾中,則「fopen(」/ home/your_username/xyz.tzt「,」w「);'將起作用。 – axiom

+0

奇怪這是我得到的。 「分割故障(核心轉儲)」編輯:得到它的工作,謝謝兄弟。 –

+0

檢查'fopen()'後'fp'是否爲NULL。 – Kishore

回答

0
FILE *fp = NULL; 
fp = fopen("c:\\test.txt", "w"); 
if(fp != NULL){ 
    fprintf(fp, "Testing...\n"); 
    fclose(fp); 
} else{ 
    perror("Could not open the file"); 
} 

應始終進行錯誤檢查,並且指針不應保持未初始化狀態。

+0

是否有必要將它初始化爲空,如果不是,會有什麼後果?當我在網上閱讀時,這沒有出現。 –

+0

不需要初始化指針,但建議使用。 – Kishore

+0

感謝您的提示 –

0

想在Ubuntu的任何文件,那麼只需右擊選擇屬性的路徑...

話,就說明路徑複製它,並追加「/filename.extension」完蛋了

+0

是的,這也可以... –