Το **α δεν μπορει να περασει με παραμετρο α[][number] σε μια συναρτηση.
Ευχαριστω για τη βοηθεια.
Συντονιστής: konnn

//Create the file
FILE *fh = fopen(TSFILE, "w");
fclose(fh);
//w+ doesn't work with fscanf
fp = fopen(TSFILE, "r+");
fscanf(fp, "%ld", &lastchk);
rewind(fp);
tlast = localtime(&lastchk);
wasdst = tlast->tm_isdst;
printf("Retrieved last check from file: %ld DST: %d\n", lastchk, wasdst);
έγραψε:Retrieved last check from file: 140735036461784 DST: 1
έγραψε:Retrieved last check from file: 1340734900 DST: 1



medigeek έγραψε:ΕυχαριστώΔιορθωσα το πρόβλημα που είπα στο "Edit", αλλά ακόμη έμεινα με την απορία για το "w+" και το fscanf...



g1wrg0s έγραψε:Βασικα, απο τη στιγμη που θες να ανοιξεις το αρχειο με mode w+ θα πρεπει να γνωριζεις οτι το αρχειο αυτο οτι και να ειχε μεσα το χανει. Η διαφορα μεταξυ του w+ και του r+ ειναι ακριβως αυτη (βασικα δεν γνωριζω εαν εχει αλλες ). Δηλαδη στην πρωτη περιπτωση το ανοιγει για εγγραφη-αναγνωση ως αδειο αρχειο ,ενω στην δευτερη απλα το ανοιγει για εγγραφη-αναγνωση.
fp = fopen(TSFILE, "w+");
fscanf(fp, "%ld", &lastchk);
η fscanf δεν διαβαζει τιποτα και αυτο φαινεται και απο την επιστρεφομενη τιμη της συναρτησης .


if (access(TSFILE, F_OK) != -1) {
fp = fopen(TSFILE, "r+");
fscanf(fp, "%ld", &lastchk);
rewind(fp);
} else {
// file does not exist
fp = fopen(TSFILE, "w+");
lastchk = 0;
}
