C語言提取檔案內容儲存到字串陣列問題

2025-04-14 03:35:20 字數 1868 閱讀 1391

1樓:昔玉英左汝

你的單詞是中文還是英文,中文應該是不可以。。

英文測咐薯梁試手譁無誤。

#include

#include

#define

filefp;inti

charword[1024],str[1024];

intmain()

fpfopen(path,"r");iffpnull)

codeprintf("error");

null))

printf("%s",str

i++;printf("%c"衡運,str[0]);

1、檔案開啟方式用r,我這顯示rw+是錯的。沒弄明白。

2、path路徑應該得用\\吧,我怕麻煩直接相對路徑,將放在工程路徑下。

除錯無誤。。。

c語言 檔案讀取 字元 到乙個字元陣列

2樓:惠企百科

1、首先開啟dev-c++軟體,單擊禪塌隱檔案---另存為,儲存原始檔。

2、在儲存檔案對話方塊中,將儲存型別選擇為c,檔名為輸出寬字元。

3、首先,定義標頭檔案的,如下圖所示。

4、接著,定義主函式名。定義乙個寬字元型別的變數wstr,型別用wchar_t表示。

5、提示輸入寬字元型變數,在鍵盤輸入任意的寬字元。最衫汪後,輸出賀廳寬字元變數,用wprintf命令實現輸出。

6、執行程式,在螢幕輸入任意的寬字元,按下回車鍵就會輸出對應的寬字元。

3樓:網友

你的程式的問題:

1.檔案如果不是要讀同時又要寫的情況,用'r'屬性開啟就可以了;

你的程式最後沒有關閉檔案。

應該寫成while((fgets(str,100,fp) != null))

原因:fgets是讀取檔案中的一整行資料放到第乙個引數位置,你第一行裝入str+0位置,第二行放到str+1??這個沒有道理呀,何況你下面還。

用str[0]來列印輸出。

3.我讀你程式,似乎是要將檔案中的所有單詞全部讀出,而且檔案中每個單詞佔用一行,象程式中的定義,你所有單詞的字串的字元個數不能超過1024個。

如果要將小於1024個單詞讀出來,需要統計一下最長單詞的字元個數,比如我們假定是9,那麼我們程式中就可以定義陣列了(每行單詞字元加換行符加字串結尾符有時還有回車符):

char world[1024][12],str[1024][12];

每次用fgets(str[i],10,fp)讀進來,i可以從0開始,每單詞加1,程式可以象下面設計:

#include ""

#include ""

#define path "/users/sqzs/desktop/"

main()

fclose(fp);

for ( i=0;i}else printf("不能開啟文字檔案'%s'.",path);}

4樓:網友

樓主的應該是日語單詞,是寬字元,而char只可以處理單字元,建議樓主使用wchar_t以及配套的輸入輸出函式。

5樓:千江月

你的單詞是中文還是英文,中文應該是不可以。。

英文測試無誤。

#include

#include

#define path ""

file *fp;

int i = 0;

char word[1024],str[1024];

int main()

elseprintf("%c",str[0]);1、檔案開啟方式用r,我這顯示rw+是錯的。沒弄明白2、path路徑應該得用\\吧,我怕麻煩直接相對路徑,將放在工程路徑下。

除錯無誤。。。

c提取字串裡面的數字,C 提取字串裡面的數字

include include using namespace std int main if i s.length break if s i 確定正負號 sign 1 if s i 確定正負號 sign 1 i value 0 while i include include const int l...

c語言字串陣列的問題C語言字串陣列的問題

include int main scanf s a for i 0 a i 0 i for j 0 j 5 j 修改 1 下標從0 4,共5個 return 0 每行結尾的 僅僅是為了連線字串使用的,如果一個字串過長,寫在一行比較不合適,就在該行結尾處加上一個反斜槓 就可以在下邊的行繼續寫這個字串...

C語言字串出現亂碼,C語言 字串輸出時最後出現亂碼

第6行改為 char a 100 b 100 如果要輸出最終結果,沒必要每複製一個字元就輸出一次。將第25行刪掉。可以參考一下這個,講的很清楚 亂碼問題 codeblocks亂碼問題。它這個是codeblocks的,其他其實也差不 太多吧。關鍵是 原始檔儲存編碼 編譯器解釋原始檔的編碼 生成執行檔案...