→ ijb:第三種,我自己有compile過,應該沒問題, 第一,二種只是概念 10/23 10:24
※ 引述《ric2k1 (Ric)》之銘言:
: ※ 引述《lionel20002 (~小遙~)》之銘言:
: : 用字串寫第三題已經快完成了...
: : 只剩下以下幾個問題....
: : 1.將int===>string方法
: : (有人問過string===>int的轉換方法,但我找不到int===>string...)
: 1. 用 atoi()
: string str;
: cin >> str;
: int strI = atoi(str.c_str());
: 2. 直接轉
: string str;
: cin >> str;
: unsigned strI = 0, i;
: for (i = 0; i < str.length()-1; i++) {
: strI += int(str[i] -'0');
: strI *= 10;
: }
: strI += int(str[i] -'0');
: cout << strI << endl;
: : 2.想要字串輸出固定的長度要怎麼做?
: : 舉例: A字串:123 想要變成000123
: : B字串:1 想要變成000001
: 自己想想看囉 !
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.42.185
不曉得對大家有沒有幫助就是了 int to string
第一種:
#include <stdio.h>
int main() {
int ss;
char temp[64];
string str;
ss = 1000;
sprintf(temp, "%d", ss);
string s(temp);
cout<<s.c_str()<<endl;//1000
cout<<s.size()<<endl;
return 0;
}
第二種:
#include <stdio.h>
#include <stdlib.h>
int main() {
char buffer[20];
int i = 3445;
_itoa( i, buffer, 10 );
string s(buffer);
}
第三種:
#include <iostream>
#include <sstream>
using namespace std;
int main() {
int aaa=4;
stringstream s1;
s1 << aaa;
string s=s1.str();
cout << s << endl;
return 0;
}
大家還有想到哪幾種方法嗎??
p.s: 後來想想這是大一的課程, 所以覺得還是要服務一下學弟們, 有不好的言詞請見諒!