亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在C中將int轉換為字符串?

如何在C中將int轉換為字符串?

C C++
UYOU 2019-07-03 16:05:32
如何在C中將int轉換為字符串?如何轉換int(整數)到字符串?我正在嘗試創建一個函數來轉換struct將其保存在文件中。
查看完整描述

3 回答

?
慕虎7371278

TA貢獻1802條經驗 獲得超4個贊

你可以用sprintf去做,或者也許snprintf如果你有:

char str[ENOUGH];sprintf(str, "%d", 42);

中的字符數(加上終止字符)str可以使用以下方法計算:

(int)((ceil(log10(num))+1)*sizeof(char))


查看完整回答
反對 回復 2019-07-03
?
慕村9548890

TA貢獻1884條經驗 獲得超4個贊

簡單的答案是:

snprintf( str, size, "%d", x );

更長的是:首先,你需要找出足夠的尺寸。snprintf告訴您長度,如果您調用它與NULL, 0作為第一個參數:

snprintf( NULL, 0, "%d", x );

為空終止符多分配一個字符.

int x = -42;int length = snprintf( NULL, 0, "%d", x );char* str = malloc( length + 1 );snprintf( str, length + 1, "%d", x );...free(str);

如果對每個格式字符串都有效,則可以使用"%g",您可以使用以下方法將int轉換為十六進制"%x"等等。


查看完整回答
反對 回復 2019-07-03
  • 3 回答
  • 0 關注
  • 1876 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號