我試圖填充數組從一個文件名:如何用C中的字符串填充數組?
Andrew
Andy
Bob
Dan
Derek
Joe
Pete
Richy
Steve
Tyler
這裏是我寫的功能...但程序崩潰時我運行它:
#include <stdio.h>
main(){
int i=0, size=10;
char fname[15];
char** data;
char* name;
FILE* fp;
printf("Enter a filename to read names:\n");
scanf("%s", fname);
fp = fopen(fname, "r");
if(fp == NULL)
exit();
data = (char**)malloc(sizeof(char**)*size);
while(!feof(fp)){
fscanf(fp, "%s", name);
data[i] = (char*)malloc(sizeof(name));
data[i] = name;
i++;
}
fclose(fp);
printf("\n\n");
for(i=0; i<size; i++)
printf("%s ", data[i]);
free(data);
}
任何人都知道我做錯了什麼? 謝謝
裏德,我不會失望,因爲你的回答是正確和正確的,但是當你不讓他考慮這個過程時,你並沒有幫助他。 – 2010-02-20 01:03:21
非常感謝,現在正在工作。是的,我現在明白我做錯了什麼。 – Andrew 2010-02-20 01:03:50
@San Jacinto:我不知道 - 我覺得這很清楚,但不僅僅是重寫他的所有代碼。如果沒有指出事情的缺陷,很難提供幫助......但我明白你的觀點。 @安德魯:我很高興它正在工作,你現在明白了。 – 2010-02-20 01:07:56