Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.
  Στις 25/4/2013 στις 6:28 ΜΜ, Star_Light είπε

Δεν πρεπει να συμπεριλάβεις το αρχειο επικεφαλιδας(που ειναι δηλωμενη με το extern) στο .c οπου οριζεις την global για να μπορει να τσεκαρει ετσι ο μεταγλωτιστης αν υπάρχει συνεπεια μεταξυ ορισμου και δηλωσης ? Οπως το εκανε και πιο πανω απο το δικο σου ποστ ο ημιθεος με τα αρχεια που εδωσε

Ναι, αλλά εγώ είπα πως δεν πρέπει να βάλεις στο .h τον ορισμό της global (εσύ μιλάς για την δήλωσή της).

  • Απαντ. 1,6k
  • Δημ.
  • Τελ. απάντηση

Συχνή συμμετοχή στο θέμα

Δημοσ.

Καλησπέρα,

 

είναι εφικτό να κάνω ένα πρόγραμμα να περιμένει τον χρήστη περιορισμένο χρονικό διάστημα(πχ 2 λεπτά)

να πληκτρολογήσει μια επιλογή και άν ο χρήστης τελικά δεν πληκτρολογήσει τίποτα σε αυτο το διάστημα το πρόγραμμα να τερματιστεί;

Δημοσ.
  Στις 1/5/2013 στις 6:44 ΜΜ, Frod0 είπε

Καλησπέρα,

 

είναι εφικτό να κάνω ένα πρόγραμμα να περιμένει τον χρήστη περιορισμένο χρονικό διάστημα(πχ 2 λεπτά)

να πληκτρολογήσει μια επιλογή και άν ο χρήστης τελικά δεν πληκτρολογήσει τίποτα σε αυτο το διάστημα το πρόγραμμα να τερματιστεί;

Με αφορμή την χρήσιμη και εξαιρετικά πνευματώδη συνεισφορά της πάπιας, παραθέτω μερικά ενδιαφέροντα κατά τη γνώμη μου links.

How to use timer in C?

timers in c

 

Γενικά βάζοντας σε μια μηχανή αναζήτησης το "timer in c" πιστεύω ότι θα καλυφθείς.

  • Like 2
Δημοσ.

Απορια εστω οτι εχω ενα πινακα

char tmp[] = "ABCDEFGΗ"

 

και θέλω σε καθε θεση του ι να εχω δυο χαρακτηρες. Πως το κανω?

Δημοσ.

Καταρχάς δεν γίνεται να έχεις παραπάνω από ένα χαρακτήρα σε μία θέση πίνακα. Εσύ θες πίνακα από strings αν κατάλαβα καλά; Μια λύση είναι να δημιουργήσεις ένα πίνακα χαρακτήρων δύο διαστάσεων.

Δημοσ.
  Στις 9/5/2013 στις 1:03 ΜΜ, Anubis13 είπε

...

Δεν παιζει ομως! Που κανω λαθος στην σκεψη

 

Στο ότι αυτό που ζητάς δεν είναι string αλλά πίνακας από strings, με το κάθε string να έχει θέση για μέχρι 2 ωφέλιμους χαρακτήρες...

 

 

    char tmp[][3] = { {"ab"}, {"58"}, {"r5"}, {"ji"}, {"\0"} };

    int i = 0;
    while ( *tmp[i] )
        puts( tmp[i++] );
Δημοσ.

Xμμ με παιδευει η C γι'αυτο που θελω αλλα δεν το βαζω κατω :-D

Σωστος ο τροπος σου migf1 αλλα επειδη ο πινακας που ηδη εχω ειναι ορισμενος μονοδιαστατος δεν με πειραζει να το περναω σε 2D αλλα ψαχνω κατι αλλο.

Αυτο σημαινει πως αν θελω ν-χαρακτηρων string χρειαζομαι ν-διαστατο πινακα... :X

Δημοσ.
  Στις 9/5/2013 στις 1:26 ΜΜ, Anubis13 είπε
Αυτο σημαινει πως αν θελω ν-χαρακτηρων string χρειαζομαι ν-διαστατο πινακα... :X

Πάλι δύο διαστάσεων θα είναι ο πίνακας που χρειάζεσαι!

Δημοσ.
  Στις 9/5/2013 στις 1:32 ΜΜ, akisk είπε

Πάλι δύο διαστάσεων θα είναι ο πίνακας που χρειάζεσαι!

 

σωστα. Δεν το βαζω να σκεφτει σημερα!

Δημοσ.
  Στις 9/5/2013 στις 1:26 ΜΜ, Anubis13 είπε

Xμμ με παιδευει η C γι'αυτο που θελω αλλα δεν το βαζω κατω :-D

Χεχε...

 

  Αναφορά σε κείμενο

Σωστος ο τροπος σου migf1 αλλα επειδη ο πινακας που ηδη εχω ειναι ορισμενος μονοδιαστατος δεν με πειραζει να το περναω σε 2D αλλα ψαχνω κατι αλλο.

Δεν κατάλαβα τι εννοείς. Για γίνε πιο αναλυτικός.

 

  Αναφορά σε κείμενο

Αυτο σημαινει πως αν θελω ν-χαρακτηρων string χρειαζομαι ν-διαστατο πινακα... :X

Αν εννοείς να έχεις string ν-χαρακτήρων σε κάθε θέση, 2Δ θα είναι πάλι... βάλε ν+1 αντί για 3 στον παραπάνω ορισμό. Αν πάλι εννοείς πως το ν θα είναι άγνωστο και μεταβλητό για κάθε string, τότε θες έναν πίνακα από δείκτες χαρακτήρων...

 

char *tmp2[] = { "---", "3243432", "dsa", "4324ff", NULL };

i = 0;
while ( tmp2[i] )
	puts( tmp2[i++] );
Δημοσ.
  Στις 9/5/2013 στις 1:34 ΜΜ, migf1 είπε

Δεν κατάλαβα τι εννοείς. Για γίνε πιο αναλυτικός.

 

Κανω διαφορα και καταληγω σε ενα τετοιο πινακα

char tmp[] = "ABCDEFGΗ"

Σκεψου οτι δεν ειναι ορισμενος ετσι απλα εχω καταληξει σε ενα τετοιο πινακα με n χαρακτηρες σε καθε θεση του. Θελω τωρα απο αυτον τον πινακα να παιρνω ανα 2 τους χαρακτηρες με καποιο τροπο ωστε να συνεχισω αυτο που κανω.

Δημοσ.
  Στις 9/5/2013 στις 1:50 ΜΜ, Anubis13 είπε

Κανω διαφορα και καταληγω σε ενα τετοιο πινακα

char tmp[] = "ABCDEFGΗ"

Σκεψου οτι δεν ειναι ορισμενος ετσι απλα εχω καταληξει σε ενα τετοιο πινακα με n χαρακτηρες σε καθε θεση του. Θελω τωρα απο αυτον τον πινακα να παιρνω ανα 2 τους χαρακτηρες με καποιο τροπο ωστε να συνεχισω αυτο που κανω.

Δεν το πιάνω ρε συ τι εννοείς όταν λες πως ο παραπάνω tmp[] πίνακας έχει ν χαρακτήρες σε κάθε θέση του. Εγώ τον βλέπω να έχει 8+1 θέσεις, όλες πιασμένες (με την ένατη θέση πιασμένη από το '\0').

Δημοσ.
  Στις 9/5/2013 στις 2:44 ΜΜ, migf1 είπε

Δεν το πιάνω ρε συ τι εννοείς όταν λες πως ο παραπάνω tmp[] πίνακας έχει ν χαρακτήρες σε κάθε θέση του. Εγώ τον βλέπω να έχει 8+1 θέσεις, όλες πιασμένες (με την ένατη θέση πιασμένη από το '\0').

 

E αυτος εχει 8 εστω οτι μετα απο πραξεις και παμπολλες πραξεις εχουμε καταληξει σε ενα μονοδιαστατο πινακα ν χαρακτηρων. απο εκει και επειτα πως συνεχιζω?

Δημοσ.

Κάτι τέτοιο ίσως;

 

 

  Εμφάνιση κρυμμένου περιεχομένου

 

Έξοδος:

12
34
56
78
90
<NULL>
<NULL>
<NULL>
<NULL>
<NULL>
Press any key to continue . . .
Αν θες να σταματάει το τύπωμα πριν 1ο NULL στοιχείο, βγάλε το θαυμαστικό μπροστά από τo όρισμα QUIT_ON_1ST_NULL στην κλήση της stepped_print().

 

ΥΓ. Μπορεί να έχει bugs ο κώδικας, δεν τον έχω δοκιμάσει εξαντλητικά.

Επισκέπτης
Αυτό το θέμα είναι πλέον κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...