您的位置:首页 > 其它

【LeetCode笔记】Reverse Integer

2014-07-08 23:44 351 查看
1. If want to reuse the same stringstream object, need to clear the buffer before use.

stream.clear() works in Dev-C++.

Others recommended stream.str(""), but it doesn't work in my code.

2. int: 10, 100, 1000, 10000...

After being converted to string type and reversed, they'll be 01, 001, 0001, 00001... Convert them back to int, will get just 1, no more zeros.

3. reverse int : 1000000003 can cause overflow problem.

So use long long type to save 3000000001. Problem solved.

4. Assignment: string = int will assign the ACSii code of the int to string. e.g.:

int i = 49; string s = i; cout << s;

Output: 1

********************************************************************

My test code:

#include<iostream>

#include<string>

#include<sstream>

#include<algorithm>

using namespace std;

int main(){

int i = 1000000003;

string s;

stringstream ss;

s = i;

cout << i << " " << s << endl;

// int to string

ss << i;

ss >> s;

cout << i << " " << s << endl;

// reverse string

reverse(s.begin(), s.end());

cout << sizeof(s) << " This is a string " << s << endl;

// string to in

long long result;

ss.clear();

ss << s;

ss >> result;

cout << sizeof(result) << " This is a int " << result << endl;

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: