我有一個輸入文件,這只是字符串數組指針只傳遞一個字符
蘋果 香蕉 梨 等都在不同線路上
,我需要用一個循環去行逐行將每個字符串分配給一個變量,然後再將該字符串傳遞給其他函數。我通過使用fscanf(必需)來做到這一點。目前,我在我的main()
char *name;
for (i=0; i<=fileLength; i++) {
input(fp1, name)
printf("%s", &name);
// later would pass name elsewhere
}
和
void input(FILE *fp1, char name) {
fscanf(fp1, "%s", &name);
printf("%s", &name);
}
如果我運行從輸入功能的printf語句,我得到整個字符串完美。如果我從main運行它,我只會得到「A」。儘管輸入函數中的printf語句正確輸出,但在執行香蕉行時不會更改爲「B」。什麼給和我如何獲得名稱var打印出我的main(),然後能夠傳遞該var?
'炭name' ... hmmmm –
'空隙輸入(FILE * fp1的,字符*名){ 的fscanf(FP1, 「%S」,姓名) ; printf(「%s」,name); }初學者 –
'char * name'被初始化,你需要爲它分配空間。 – RoadRunner