strcpy () - αντιγραφή πλέον string σε κοντύτερο

S

sivamit

Guest
Γεια σου πώς λειτουργεί αυτό το κωδικό ..? char * p = "WiMAX"? char arr [3]? strcpy (ARR, ιστ)? printf ("% s", arr)? εξόδου: WiMAX τον compiler doesn't δείχνουν καμία προειδοποίηση ή μήνυμα σφάλματος .. whatz το prblm ..; Παρακαλώ βοηθήστε ..!!!
 
Αυτός είναι ο (δ) πλεονέκτημα της δείκτες σε Γ. arr είναι βασικά ένας δείκτης σε μια μνήμη όπου arr ξεκινά. Σε strcpy (ARR, ιστ) το χρησιμοποιείτε ως δείκτης, τι strcpy δεν αντιγράφει όλα τα δεδομένα από την πηγή στον προορισμό, μέχρι να βρει NULL χαρακτήρα (η οποία ήταν μέρη compiler μου μετά string "WiMAX" αυτόματα). Έτσι καταλήγετε αντιγραφή την πλήρη σειρά από p σε ARR. Εάν έχετε δηλώσει μια μεταβλητή μετά arr [3]? μπορείτε να δείτε ότι η τιμή του είναι αντικατασταθούν από strcpy ().
 
Νομίζω ότι η κατάσχεση μπορεί να διευκρινίσει το πρόβλημά σας .... : D: ιδέα:
 
arr ανάγκες 6 μονάδες αποθήκευσης, 5 για την «WiMAX» και ένα για το null χαρακτήρα τερματισμού (0). AC compiler δεν γράφει babysitting κώδικα για έναν προγραμματιστή. Αν αντικαταστήσετε τη μνήμη, είστε μόνοι σας, ο compiler δεν δημιουργεί όρια κώδικας ελέγχου. Σε αυτή την περίπτωση strcpy () δεν αντικαταστήσετε τη μνήμη που θα είχε συντριβεί το πρόγραμμα.
 

Welcome to EDABoard.com

Sponsor

Back
Top