2014-02-17 80 views
0

我是一名初學者,我必須編寫一個程序,從文件中讀取一列。我拋出我能寫的東西。我不知道該如何做才能加載一個選定的列。以及如何處理數組的大小。從文件中加載列

#define _CRT_SECURE_NO_WARNINGS 
#include <stdio.h> 
#include <stdlib.h> 

int main() 

{ 
    FILE *pr; 
    char fname[100]; 
    int i, n; 


    char tablica[100][100]; 



    printf ("File name\n"); 
    scanf ("%s", &fname); 
    pr = fopen(fname,"r"); 


    if (pr == NULL) 
    { 
    printf ("can't load file\n"); 
    exit(-1); 
    } 

    printf ("column number\n"); 
    scanf ("%d",&i); 
    if (i == NULL) 
    { 
     printf ("no column\n"); 
    } 



    while (!feof(pr)) 
    { 
    fscanf(pr, "%s",&tablica[i]); 
    printf ("%s\n",tablica[i]); 
    } 
    fclose (pr); 
} 
+1

我不知道問題是什麼。你沒有告訴我們你確切的問題是什麼:)?這個當前的代碼做錯了什麼? –

+0

你能告訴我們一個文件的例子嗎? –

+0

所以你想要在文件權列沒有列? –

回答

0

文件加載錯誤是作爲scanf ("%s", &fname);讀取文件名地址fname這是錯誤的地址。

嘗試只是路過字符數組fname的基地址一樣,scanf ("%s", fname);