2016-07-09 3 views

Antwort

2

Wenn die Datei einstellige Zahlen enthält, können Sie diesen Code verwenden, den ich einmal verwendet habe.

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

int main() { 
    int v; 
    printf("Please enter the value of v "); 
    scanf("%d",&v); 
    int** graph = malloc(sizeof(int*)*v); 
    int i,j; 
    for(i=0;i<v;i++) 
     graph[i] = malloc(sizeof(int)*v); 
    FILE *fp; 
    fp = fopen("input","r"); 
    char c; 
    for(i=0;i<v;i++) { 
      for(j = 0; j < v; j++) { 
      fscanf(fp, " %c", &c); 
      graph[i][j] = c-'0'; 
     } 
    } 
    for(i=0;i<v;i++) { 
     for(j=0;j<v;j++) { 
      printf("%d ",graph[i][j]); 
     } 
     printf("\n"); 
    } 
    return 0; 
} 
+1

Es ist nicht notwendig, 'malloc' zu erzeugen. – ameyCU

+1

Danke. Ich dachte immer, dass es einen leeren Zeiger zurückgibt. –

+0

ja in der Tat! das ist der Grund, warum Sie nicht den Wert von "malloc" verwenden müssen – Cherubim

Verwandte Themen