DeathByCh0c0 Δημοσ. 19 Δεκεμβρίου 2013 Δημοσ. 19 Δεκεμβρίου 2013 Καλησπέρα, γνωρίζει κανείς πως γίνεται σωστή μετατροπή ακεραίου σε δυσδιάστατο πίνακα χαρακτήρων ; ενδεικτικά: int degrees; char* array[20][2]; int main () { array[i][0] = (char*) degrees; } Ο compiler δεν μου πετάει error όμως όταν το τρέχω τρώει crash το πρόγραμμα. Ευχαριστώ
MitsakosGR Δημοσ. 19 Δεκεμβρίου 2013 Δημοσ. 19 Δεκεμβρίου 2013 Τι ακριβώς προσπαθείς να κάνεις; Τι σημαίνει "μετατροπή ακεραίου σε δυσδιάστατο πίνακα χαρακτήρων;" ;;; Για να μετατρέψεις int σε char* πρέπει να χρησιμοποιήσεις το itoa(): itoa(degrees, array[i][0], 10);
DeathByCh0c0 Δημοσ. 19 Δεκεμβρίου 2013 Μέλος Δημοσ. 19 Δεκεμβρίου 2013 Οκ αυτό εννούσα (int σε char*), δηλαδή χωρίς χρήση συνάρτησης όπως η itoa() δεν μπορώ να το επιτεύξω ;
lion2486 Δημοσ. 19 Δεκεμβρίου 2013 Δημοσ. 19 Δεκεμβρίου 2013 κάτι της μορφής char * int_to_char(int i){ char * str; int a; str = malloc(sizeof(char) * (int)(i/10) + 2); a = 0; while(a <= (int)(i/10) ){ str[a] = '0' + i%10; i = (int)i/10; } return str; } (πρόχειρο είναι)
lion2486 Δημοσ. 20 Δεκεμβρίου 2013 Δημοσ. 20 Δεκεμβρίου 2013 όντως και το sprintf(buf, "%d", value); σου κάνει!
migf1 Δημοσ. 20 Δεκεμβρίου 2013 Δημοσ. 20 Δεκεμβρίου 2013 όντως και το sprintf(buf, "%d", value); σου κάνει! Ή αν είναι να πάει σε c-like λύσεις, τότε καλύτερα με snprintf() ... αν και νομίζω πως στην C++ μπήκε στην C++11
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα