[問題] 不用sprintf的寫法
大家好
最近在練習C語言的時候遇到一個問題
關於sprintf的用法
我知道
sprintf(str,"abc%xdef",123);
的意思是把123這個數字轉乘16進位後填到字串abc%xdef後
再把這整串字串填到str裡面
所以最後的str為"abc7Bdef"
今天的問題是假如不用 sprintf 以及 %x 這個函數
要怎麼達成跟sprintf一樣的效果? @@
在此假設輸出格式只有16進位的情況而已
我自己的想法是
寫一個函數型式為 char *test(char* str1,char* str2,int num);
在這個函數中
我先把num轉成16進位
再把str2中有%x的地方給取代掉
但是我有個問題
就是如果今天引數不只一個 ex: test(str,abc%xdef%x,123,456)
那函數的原型要怎麼定義?@@
我知道main可以用 int main(int argc,char* argv[])
那自己定義的函數也可以用這樣的方式嗎?@@
現在主要是卡在不知道引數個數的情況下函數要怎麼定義 Orz
所以就來請教大家了 @@"
在此就先謝謝大家的回覆囉~~~~
--
▍ ▍ ╯╰ ╯╰ ◢◣ ◢◣ 我最愛的 柏柏龍~ 柏柏龍~
◢██◣ ╮╭ ▎▎╮╭ ▎▎ 柏柏龍~ 柏柏龍~
⊙ ⊙ ◢ ◣ ⊙ ⊙ ◣ 人人心中都有柏柏龍~
≡ ▼ ≡ ▲▲ ● ● ≡ ▼ ≡ ■ ■ ■ ■ 憤怒就永遠不會消失~
皿 ◢⊙⊙◣ ≡皿 ≡ 皿 炸是最美的擁有~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.167.20.65
→
01/16 14:54, , 1F
01/16 14:54, 1F
→
01/16 14:54, , 2F
01/16 14:54, 2F
推
01/16 15:25, , 3F
01/16 15:25, 3F
→
01/16 15:26, , 4F
01/16 15:26, 4F
→
01/16 15:28, , 5F
01/16 15:28, 5F
→
01/16 23:56, , 6F
01/16 23:56, 6F
→
01/16 23:57, , 7F
01/16 23:57, 7F
→
01/16 23:57, , 8F
01/16 23:57, 8F
→
01/16 23:57, , 9F
01/16 23:57, 9F
推
01/17 00:07, , 10F
01/17 00:07, 10F
→
01/17 00:09, , 11F
01/17 00:09, 11F
→
01/17 00:10, , 12F
01/17 00:10, 12F
推
01/17 00:19, , 13F
01/17 00:19, 13F
→
01/17 00:19, , 14F
01/17 00:19, 14F
討論串 (同標題文章)