char *

2008-12-07 21 views
19

में एक int संलग्न करें आप C++ में char* पर एक पूर्णांक कैसे जोड़ेंगे?char *

उत्तर

22

पहले एक char*sprintf() का उपयोग करने के पूर्णांक कन्वर्ट:

char integer_string[32]; 
int integer = 1234; 

sprintf(integer_string, "%d", integer); 

फिर अपने अन्य चार * से संलग्न करने के लिए, का उपयोग strcat():

char other_string[64] = "Integer: "; // make sure you allocate enough space to append the other string 

strcat(other_string, integer_string); // other_string now contains "Integer: 1234" 
+3

यह सी – Sydius

+0

में भी काम करेगा। आकार (int)> 4. – Tom

+0

हाँ, यह वास्तव में असुरक्षित है, तो आपके हाथों पर एक बफर ओवरफ़्लो भेद्यता है। कम से कम strncat का उपयोग करें ... –

9

तुम भी stringstreams इस्तेमाल कर सकते हैं।

width = floor(log10(num))+1; 
result = malloc(strlen(str)+len)); 
sprintf(result, "%s%*d", str, width, num); 

आप अपने सिस्टम पर एक पूर्णांक के लिए अधिकतम लंबाई का उपयोग करके लेन को आसान बनाने में कर सकते हैं:

char *theString = "Some string"; 
int theInt = 5; 
stringstream ss; 
ss << theString << theInt; 

स्ट्रिंग तो का उपयोग कर ss.str();

4

कुछ की तरह पहुँचा जा सकता है।

ओप्स संपादित करें - "++" नहीं देखा। फिर भी, यह एक विकल्प है।

संबंधित मुद्दे