用c和c++分别实现ASCII String to integers

c++的实现,需要使用stringstream流,也就是字符串流,使用它可以很方便实现ASCII String和Integers的互转

源代码如下:

#include <iostream> #include <sstream> using namespace std; string& int_to_string(int &input) { static string str; ostringstream ostream; ostream << input; istringstream istream(ostream.str()); istream >> str; return str; } void string_to_int(string& str,int& output) { istringstream istream(str); istream >>output; } int main() { int input = 1234; int output = 0; string str; str = int_to_string(input); cout << str << endl; string_to_int(str,output); cout << output <<endl; return 0; }

 

用c实现的话,最方便的就是使用sscanf和sprintf,如果对它们的使用不熟悉的话请参考:

sscanf:http://baike.baidu.com/view/1364018.htm

sprintf:http://baike.baidu.com/view/1295144.htm

 

源代码如下:

#include <stdio.h> void int_to_string(int input,char *ptr) { sprintf(ptr,"%d",input); } int string_to_int(char str[]) { static int output; sscanf(str,"%d",&output); return output; } int main() { char str[] = "1234"; int out; out = string_to_int(str); printf("%d/n",out); char s[10];//Êý×ÖoutµÄλÊý¾ö¶¨ÁËsÊý×éµÄ´óС,Ò²¾Í˵outÊǼ¸Î»Êý£¬ÔòsµÄ´óСӦ¸ÃÊÇoutµÄλÊý¼Ó1 int_to_string(out,s); printf("%s/n",s); return 0; }

你可能感兴趣的:(C++,c,String,input,output,stdstring)