我創建了一個代碼,根據行將文本中的句子轉換爲數組。 例如:指向字符串數組的指針數組
char ** Sentences[2]
Sentences[0]="hello ola hiya howdy"
Sentences[1]="chips fries"
我需要每一行單獨進去的話(我已經有一個準備功能,其這樣做,並存儲輸出到一個char **
陣列 我想用來存儲字的所有陣列(在這種情況下 - 每個句子2,1),通過創建一個指向這些數組的指針數組。 我將非常高興知道它是如何完成的。我還需要使用malloc創建一個臨時數組並存儲單詞它,以便每次動態地創建陣列。
可以,我可以使用字符* a拋棄並存儲在其中創建的數組?
我會更高興的解決方案。
編輯: 我創建了一個內存分配陣列,但它不斷改寫自己:
char ** Temp=NULL;
char **pointer[ir];
for (Note = 0; Note < ir; ++Note) {
Temp=malloc(Count(' ',Sentences[Note])*sizeof(char *));
int ifd=StoreArr(Sentences[Note],Temp," ");
pointer[Note]=&Temp;
printer(*(pointer[Note]),ifd);
}
輸出我得到的是這樣的:
你好 OLA 你好 你好 埃坦 eitanon eitanya
但如果我打電話
printer(*(pointer[0]),3);
外爲,我得到
eitan
eitanon
eitanya
而不是第一字(這意味着該溫度不分配存儲器)? 我會很樂意提供幫助。
究竟是什麼不清楚這樣做? – StoryTeller
我掙扎着2個主要的事情:第一個是創建數組:我有一個函數返回每行中的單詞數(例如 - 4在句子[0] .i不知道如何創建一個臨時數組和malloc它的大小爲4個單元格爲例,並在下一次運行 - 2個單元格(對於單詞數量的句子[1])。我也不知道如何創建一個指向char **數組的指針數組。 – user3005945
@ user3005945啓用編譯器錯誤並嘗試編譯您在問題中發佈的代碼 – this