注册 登录
编程论坛 C++教室

[求助]怎么把字符数组转成整型?

zkkpkk 发布于 2007-05-26 15:49, 2133 次点击
char* str="123";
转成整型123,与没有现成的函数

[此贴子已经被作者于2007-5-26 15:50:32编辑过]

16 回复
#2
zkkpkk2007-05-26 17:04
喂,发表意见啊,真的没有函数用?
如果自己转的话怎么办?
我想过123转的话要先想办法将他变成100、20、3,后加起来,比方t要补的“0”的个数t在某索引时t和数组长度l的关系是l-t-1,但后面怎么把“0”补上去就是个问题了
#3
aipb20072007-05-26 20:55
用字符串流啊!

找找吧,我发过几次了!

或者去搜索msdn:sstream

[此贴子已经被作者于2007-5-27 9:11:13编辑过]

#4
aipb20072007-05-26 21:03

还是写个吧,:


[CODE]#include <iostream>
#include <sstream>
using namespace std;
int main(){
char* str = "123";
int num;
istringstream in(str);
in >> num;
cout << num << endl;
}[/CODE]


#5
zkkpkk2007-05-27 08:01
以下是引用aipb2007在2007-5-26 20:55:23的发言:
用字符串流啊!

找找吧,我发过几次了!

或者去搜索msdn:fstream

晕我搜Char,VC不熟啊,学校都是用TC的,包括这次帮学弟做作业他们也是TC

#6
zkkpkk2007-05-27 08:06
古典C++有没有,一样有sstream.h吗?
他们用TC的名字空间std不行
#7
zkkpkk2007-05-27 08:15
'sstream.h': No such file or directory
Oh,No!
#8
aipb20072007-05-27 09:10
这就不清楚了,.你去找找还有其他方法没.

怎么还用tc啊?
#9
zkkpkk2007-05-27 15:01
以下是引用aipb2007在2007-5-27 9:10:54的发言:
这就不清楚了,.你去找找还有其他方法没.

怎么还用tc啊?

不是啊,我帮1年级的学弟做作业呀

#10
weishj2007-05-27 16:21
#include <iostream>
#include <string>
using namespace std;
void main()
{
string str;
int a=0;
cin>>str;
for(int i=0;i<str.length();i++)
a=a*10+str[i]-'0';
cout<<a;

}
这个可以,不过实际使用时要判断一下str是不是全由'0'到'9'之间的字符组成
#11
zkkpkk2007-05-27 19:49
回复:(weishj)#include #include ...
我是用char*的TC没有string
#12
zkkpkk2007-06-12 15:40

        int a=0;
        char* str=\"123\";
        int b=strlen(str);
        
        for(int i=0;i<b;i++)
            a=a*10+((int)str[i])-48;
        cout<<a;
#13
wfpb2007-06-12 17:07

char* str="123";
int i=atoi(str);
#14
zkkpkk2007-06-12 19:43
回复:(wfpb)[em03]char* str=

还可以char* str="1.23";
float f=atof(str);
double d=atof(str);

[此贴子已经被作者于2007-6-12 19:55:35编辑过]

#15
wfpb2007-06-12 19:51

那就不是atoi了,是atof...

#16
zkkpkk2007-06-12 19:54
回复:(wfpb)那就不是atoi了,是atof...[em03]
写错了,copy你的时候忘改过来,我对函数库很不熟悉的
#17
超帅的苏哥2013-05-11 16:03
回复 10楼 weishj
太感谢你了,我在做作业,就字符型数组转化为整型这一步不会,快搞死我了,还好看到你的,感动啊
1