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

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

Δημοσ.

Απο το λινκ της αναρχιας

Επίσης το δοκιμασα.

 

Όπως τα λέει ο AlbNik. Για αυτό και π.χ. το ιδιωματικό...

int main( void )
{
    char s[30] = {'\0'};
    ...
γεμίζει με μηδενικά και τα υπόλοιπα bytes του s (μαζί δλδ με το 1ο).

 

EDIT:

 

...

%p και cast σε (void *) για να εκτυπώσεις το pointer.

Αυτό αν το θυμάμαι σωστά, σε C λειτουργεί από C99 κι έπειτα (σε C++ δεν θυμάμαι).

 

@timon: Πού κολλάει το OOP στην ερώτηση του τοπικ στάρτερ;

Δημοσ.

@Kercyn:

Μετά το zero byte δεν είναι σκουπίδια αλλά initialized μνήμη (επίσης zero bytes). Δες την ερώτηση 1.30 από το C-faq.

%p και cast σε (void *) για να εκτυπώσεις το pointer.

 

Επίσης υπάρχει μια καλή απάντηση και εδώ αν θέλει να ανατρέξει κάποιος  : 

 

http://stackoverflow.com/questions/18688971/c-char-array-initialization

 

Αν και δεν συμφωνω τοσο με το 

 char arr[10] = " ";

διοτι δεν ειναι τοσο ξεκάθαρο ενω το 

char arr[10] = {'\0'};

θεωρω οτι ειναι προτιμότερο. 

Δημοσ.

Αν και δεν συμφωνω τοσο με το 

 char arr[10] = " ";
διοτι δεν ειναι τοσο ξεκάθαρο ενω το 

char arr[10] = {'\0'};
θεωρω οτι ειναι προτιμότερο.

 

Στο 1ο φαντάζομαι εννοείς:

   char arr[10] = "";
δηλαδή χωρίς διάστημα ανάμεσα στα εισαγωγικά.
  • Like 1
Δημοσ.

Πάντως προσωπικά όποτε βλέπω

'\0'

πονάνε να μάτια μου.

 

300% αύξηση στα keystrokes for exactly '\0' 0 benefit.

Δημοσ.

Πάντως προσωπικά όποτε βλέπω

'\0'
πονάνε να μάτια μου.

 

300% αύξηση στα keystrokes for exactly '\0' 0 benefit.

 

Για κανονικό κώδικα όντως 0 benefit. Για παραδείγματα, tutorials, κτλ υποτίθεται έχει καλύτερο readability. Δείχνεις στον αναγνώστη ότι μιλάς για τον NUL χαρακτήρα και όχι για αριθμητικό 0 ή οτιδήποτε άλλο και έτσι (ίσως) τον βοηθάς να το καταλάβει πιο εύκολα.

Δημοσ.

Για κανονικό κώδικα όντως 0 benefit. Για παραδείγματα, tutorials, κτλ υποτίθεται έχει καλύτερο readability. Δείχνεις στον αναγνώστη ότι μιλάς για τον NUL χαρακτήρα και όχι για αριθμητικό 0 ή οτιδήποτε άλλο και έτσι (ίσως) τον βοηθάς να το καταλάβει πιο εύκολα.

Το ίδιο ισχύει και για κανονικό κώδικα.

Δημοσ.

Το ίδιο ισχύει και για κανονικό κώδικα.

Εννοείται πως παντού θέλεις readability αλλά σε ένα "κανονικό" κώδικα ενός project δεν χρειάζεται κάτι τόσο ακραίο γιατί δεν νομίζω κάποιος από τους developers να μην καταλαβαίνει κάτι τόσο απλό όσο το σκέτο 0 vs '\0' (αν και έχω διαβάσει μήνυμα developer να ζητάει να μην χρησιμοποιείται το ?: γιατί τον μπερδεύει οπότε όλα είναι πιθανά).

Δημοσ.

...

300% αύξηση στα keystrokes for exactly '\0' 0 benefit.

Στείρα δημιουργία εντυπώσεων. Αλλιώς να υποθέσουμε πως εσένα κώδικα που θα τον έγραφες σε 2 μήνες με 0, με '\0' θα σε πάρει 6 μήνες.

 

Εννοείται πως παντού θέλεις readability αλλά σε ένα "κανονικό" κώδικα ενός project δεν χρειάζεται κάτι τόσο ακραίο γιατί δεν νομίζω κάποιος από τους developers να μην καταλαβαίνει κάτι τόσο απλό όσο το σκέτο 0 vs '\0' (αν και έχω διαβάσει μήνυμα developer να ζητάει να μην χρησιμοποιείται το ?: γιατί τον μπερδεύει οπότε όλα είναι πιθανά).

Γενικώς, κώδικας που αλλάζει ή δύναται να αλλάξει αρκετά χέρια, επωφελείται πολύ από το readbility. Είτε είναι κανονικός είτε όχι. Βασικά είναι κυρίως θέμα του coding-style που επιβάλλει (αν επιβάλλει) το περιβάλλον εργασίας.

Δημοσ.

Γιατί ρε παιδιά σε κάθε thread πρέπει να υπάρχει shitstorm;

Hello!

Επειδη ειμαστε σε ελληνικο τεχνολογικο φορουμ.

 

ΥΓ: Παλι καλα που δεν υπαρχουν και πολλοι προγραμματιστες, ριξε μια ματια στο ηλεκτρονικα, κατι επικες συζητησεις περι free energy (κλαιω μονο που τα θυμαμαι)

  • Moderators
Δημοσ.

Hello!

Επειδη ειμαστε σε ελληνικο τεχνολογικο φορουμ.

 

ΥΓ: Παλι καλα που δεν υπαρχουν και πολλοι προγραμματιστες, ριξε μια ματια στο ηλεκτρονικα, κατι επικες συζητησεις περι free energy (κλαιω μονο που τα θυμαμαι)

 

Ποια ηλεκτρονικά; Δε βλέπω subforum ηλεκτρονικών στο insomnia, εκτός αν εννοείς άλλο forum, οπότε θα χρειαστώ links :P

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα

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