home · Posts · Archive · Tags

20180123-int2str

#心得 #int_to_str #ascii

  1. 如果函式要回傳string (return str),函式的前面必須寫成char *()

  2. 圖片中

str[i++] = (num % 10) + '0'; 後面要有+'0',因為0在ascii裡面是代表30(16進位),若沒有寫會變成ascii前面10個的特殊指令。

不過我這樣寫數字會反轉。

------------我是分隔線------------

如果看到這邊覺得很複雜的話其實還有更簡單的方法:

就是使用sprintf

例如:

int n;

char buffer[100];

sprintf(buffer,"%d", n);

這樣就可以把n(int)轉成buffer(character array)

可以參考:http://www.cplusplus.com/reference/cstdio/sprintf/

Ref

👈Go Back

@alanhc