2008-12-07 150 views

回答

22

首先轉換爲int使用sprintf()一個char*

char integer_string[32]; 
int integer = 1234; 

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

然後將其附加到其他的char *,使用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

這也適用於C. – Sydius 2008-12-07 02:46:24

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

喜歡的東西進行訪問。

編輯 oops - 沒有看到「++」。不過,這是另一種選擇。