c0nFuSeR Δημοσ. 19 Δεκεμβρίου 2005 Δημοσ. 19 Δεκεμβρίου 2005 στην c,c++ πως θα διαβασω ενα αρχειο που οπου οι 2 πρωτες σειρες θα εχουν απο ενα ακεραιο κι η τριτη σειρα θα εχει ενα πινακα 2 διαστασεων? βασικα θελω να αποθηκευονται σε μεταβλητες αυτα που διαβαζει.. αυτα
c0nFuSeR Δημοσ. 20 Δεκεμβρίου 2005 Μέλος Δημοσ. 20 Δεκεμβρίου 2005 ρε γμτ κολας εδω: void main() { ifstream a("cost.dat"); int x,y; int **c; a >> x; a >> y; for (int i=0; i<x; i++) { for (int j=0; j<x; j++) { a>> c[j] ; } } a.close(); } το x κι το y ta pernei ton pinaka den ton καταχωρει. τι λαθος κανω?
boutsak Δημοσ. 20 Δεκεμβρίου 2005 Δημοσ. 20 Δεκεμβρίου 2005 ρε γμτ κολας εδω: void main() { ifstream a("cost.dat"); int x' date='y; int **c; a >> x; a >> y; for (int i=0; i<x; i++) { for (int j=0; j<x; j++) { a>> c[i'][j] ; } } a.close(); } το x κι το y ta pernei ton pinaka den ton καταχωρει. τι λαθος κανω? Λογικά σου πετάει segmetation fault γιατί δεν έχει κάνεις allocation μνήμης για τον πίνακα σου (κοινώς malloc)
bird Δημοσ. 21 Δεκεμβρίου 2005 Δημοσ. 21 Δεκεμβρίου 2005 To malloc prepei na mpei prin na arxiseis na diavazeis ston pinaka c
powerfty Δημοσ. 21 Δεκεμβρίου 2005 Δημοσ. 21 Δεκεμβρίου 2005 ρε γμτ κολας εδω: void main() { ifstream a("cost.dat"); int x' date='y; int **c; a >> x; a >> y; for (int i=0; i<x; i++) { for (int j=0; j<x; j++) { a>> c[i'][j] ; } } a.close(); } το x κι το y ta pernei ton pinaka den ton καταχωρει. τι λαθος κανω? c0nFuSeR dokimase ton parakatw kwdika pou einai se C #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int x, y; int* array; int i, j; FILE* fp = fopen("cost.dat", "r"); fscanf(fp, "%d\n%d\n", &x, &y); array = (int*)malloc(x * y * sizeof(int)); for(i = 0; i < x; ++i) { for(j = 0; j < y; ++j) { fscanf(fp, "%d", &array[i * y + j]); } } for(i = 0; i < x; ++i) { for(j = 0; j < y; ++j) { printf("%d ", array[i * y + j]); } printf("\n"); } fclose(fp); system("PAUSE"); return 0; }
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.