panayiotispatra Δημοσ. 27 Νοεμβρίου 2007 Δημοσ. 27 Νοεμβρίου 2007 Θέλω να μετρήσω τον αριθμό τον των digit χαρακτήρων της πρώτης γραμμής από ένα file π.χ 1 2 5 6. και περιμένω να πάρω το αποτέλεσμα digits = 4. Αντί αυτού περνώ το παρακάτω. Το χρειάζομαι για να το ενσωματώσω σε ένα πρόγραμμα. Που προσπαθώ να φτιάξω. digits = 0 digits = 0 digits = 0 digits = 0 digits =0; while ( (chr = fgetc(fp)) != '\n'){ if ((chr == '\r') || (chr == ' ') || (chr == '\t')|| (chr == '-')) { continue; } else if (chr == EOF) { if (isdigit(chr)) digits++; } printf("digits = %d\n", digits); } Βλέπει κανείς που κάνω λάθος.
alkisg Δημοσ. 28 Νοεμβρίου 2007 Δημοσ. 28 Νοεμβρίου 2007 else if (chr == EOF) { if (isdigit(chr)) digits++; Δεν είναι δυνατόν να είναι και EOF και digit ο chr, επομένως ποτέ δεν θα μπει στο δεύτερο if και ποτέ δεν θα γίνει digits++.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.