[英]Appending Files using fopen (C programming language) and the “a+” Mode
[英]Which is the corresponding word of the x mode on open files in C language?
使用c語言在打開的文件上x模式的對應單詞是哪個? 我已經在互聯網上搜索了一段時間,但沒有答案。 我如何獲得相關信息? 請幫助我,謝謝!
根據C11標准[7.21.5.3§5] fopen
函數 (強調我的):
如果文件已經存在或無法創建,則使用排他模式 (
'x'
作為mode
參數的最后一個字符)打開文件失敗。 否則,將在基礎系統支持獨占訪問的范圍內以獨占(也稱為非共享)訪問來創建文件。
因此, x
確實是“獨占模式”的縮寫。
最新的C標准C11提供了新的模式“ x”,這是專有的創建和打開模式。 模式“ x”可與任何“ w”說明符一起使用,例如“ wx”,“ wbx”。 當x與w一起使用時,如果文件已經存在或無法打開,則fopen()返回NULL。 不會覆蓋現有文件的C11程序。
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *fp = fopen("test.txt", "wx");
if (fp == NULL)
{
puts("Couldn't open file or file already exists");
exit(0);
}
else
{
fputs("stack overflow", fp);
puts("Done");
fclose(fp);
}
return 0;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.