Konvertieren von Integer in Character Array mit C [closed]

7

Ich möchte eine ganze Zahl in ein Zeichen-Array in C konvertieren.

Eingabe:

%Vor%

Ergebnis entspricht:

%Vor%

Wie kann ich das tun?

    
tousif 28.01.2013, 15:02
quelle

5 Antworten

13

Verwenden Sie die Funktion log10 , um die Anzahl der Ziffern & amp; mach es wie unten

%Vor%

oder  Die andere Option ist sprintf(yourCharArray,"%ld", intNumber);

    
Ravindra Bagale 28.01.2013, 15:06
quelle
9

< sprintf wird gut funktionieren, wenn Ihr erstes Argument ein Zeiger auf ein Zeichen ist (ein Zeiger auf ein Zeichen ist ein Array in 'c'), Sie müssen sicherstellen, dass Sie genügend Platz für alle Ziffern und ein abschließendes '\ 0' haben. Wenn eine Ganzzahl beispielsweise 32 Bit verwendet, hat sie bis zu 10 Dezimalstellen. Ihr Code sollte also so aussehen:

%Vor%     
Amit Yaron 28.01.2013 15:22
quelle
1

Der einfache Weg ist mit sprintf . Ich weiß, dass andere itoa vorgeschlagen haben, aber a) es ist nicht Teil der Standardbibliothek, und b) sprintf gibt Ihnen Formatierungsoptionen, die itoa nicht hat.

    
John Bode 28.01.2013 15:06
quelle
0

Sie können versuchen, itoa zu verwenden. Eine andere Alternative ist die Verwendung von sprintf .

    
Ivaylo Strandjev 28.01.2013 15:04
quelle
0

Verwenden Sie itoa, wie hier angezeigt wird.

%Vor%

buf wird wie beschrieben ein String-Array sein. Möglicherweise müssen Sie die Größe des Puffers erhöhen.

    
PearsonArtPhoto 28.01.2013 15:04
quelle

Tags und Links