×

字符串转数字c++不用库函数

字符串转数字c++不用库函数(c++ 字符串转数值)

admin admin 发表于2024-02-14 03:13:40 浏览34 评论0

抢沙发发表评论

这篇文章给大家聊聊关于字符串转数字c++不用库函数,以及c++ 字符串转数值对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

本文目录

c++ 字符串转数值

char *getdigit(char *pc){ int len = strlen(pc); bool ispoint = false; int i = 0,j = 0,digitnum = 0; while (pc《=’9’) { digitnum++; ++i; } char *ret = new char; for(i=0;i《len;i++){ if(pc《=’9’){ if(ispoint){ ret=’.’; ++j; } ret; ++j; ispoint = false; } else if(pc==’.’){ ispoint = true; } } ret = ’\0’; return ret;}提取出来的字符串还得经过转换才能变成 数值 类型/********************将char *转换为float*************************/float string2number(char* s){ if(NULL==s) return 0; float fl = 0,fr = 0,t = 1.0; int i=0; bool ispoint = false; while(i《strlen(s)){ if (s==’.’) { ispoint = true; i++; continue; } if (ispoint) { t /= 10; fr += t*(s-’0’); i++; } else{ fl *= 10; fl += s-’0’; i++; } } return fl+fr;}void main(){char s;cin》》s;cout《《string2number(getdigit(s))《《endl;}

C++ 如何将字符串(由数字组成)转换为 int型数字,以用于计算

#include 《iostream.h》#define MAX_LONG 0X7FFFFFFFint myatoi(char *s) { // 将数字串转换为整数值,不转换非数字字符long sign = 1,num = 0;;char *p = s;if(*p == ’-’) {sign = -1;p++;}if(*p == ’+’) {sign = 1;p++;}while(*p) {if(num 》= MAX_LONG/10) {cout《《"被转换的字串过长,整数越界。"《《endl;return 0;}if((*p 》= ’0’) && (*p 《= ’9’)) num = 10*num + (*p) - ’0’;p++;}return sign*num;}int main() {char s;int num;cout《《"请输入一个字串 : "《《endl;// cin》》s; // cin把空格作为字符串结束标志,所以不能输入含有空格的字符串gets(s);num = myatoi(s);cout《《"转换后的整数为 : "《《num《《endl《《endl;return 0;}

关于c++/c字符串转换成数字的问题

voidfun(char*pstr){//注意:该函数只针对字符串中全是数字的情况,如果有其它字符,请重新判断处理if(NULL==pstr)return;intstrlength=strlen(pstr);if(strlength《=0)return;int*arr=newint;memset(arr,0,strlength+1);inti=0;while(*(pstr+i)!=’\0){arr=*(pstr+i)-’0’;++i;}for(i=0;i《=strlength)cout《评论00加载更多

vc++编程问题,编写一个fun函数:long fun(char s[]),将一个数字字符串转换为一个整数(不得调用标准库

 #include《stdio.h》long strtonumber(char str){    long n = 0;    for(int i=0;str!=’\0’;i++){        n = n*10+str-’0’;    }    return n;}

C++中如何实现数字字符串转换成整数啊帮忙补充一下下面语言吧!

楼主是要求不能用原有的库函数实现的吧。这样:int strTOnum(char *str){ int temp = 0; const char *ptr = str; //ptr保存str字符串开头 if (*str == ’-’ || *str == ’+’) //如果第一个字符是正负号, { //则移到下一个字符 str++; } while(*str != 0) { if ((*str 《 ’0’) || (*str 》 ’9’)) //如果当前字符不是数字 { //则退出循环 break; } temp = temp * 10 + (*str - ’0’); //如果当前字符是数字则计算数值 str++; //移到下一个字符 } if (*ptr == ’-’) //如果字符串是以"-"开头,则转换成其相反数 { temp = -temp; } return temp;}

将数字字符串转换为数字,不用字符串转换函数,求c语言代码

//#include "stdafx.h"//If the vc++6.0, with this line.#include "stdio.h"int getnDec(char *p,int *q){    int i,j,k,x,n;    for(k=i=0;p;i++)        if(p《=’9’){            for(x=0,n=i+6,j=i;j《n;j++)                if(p《=’9’)                    (x*=10)+=p-’0’;                else break;            i=j-1;            q=x;        }    return k;}void mysort(int *p,int n){    int i,j,k;    for(i=0;i《n;i++){        for(k=i,j=k+1;j《n;j++)            if(p) k=j;        if(k!=i){            j=p;            p;            p=j;        }    }}void myout(int *p,int n){    int i;    for(i=0;i《n;printf("%d ",p));}int main(void){    char str="ab1di45,780145646The quick17896brown fox66jumps100over90a lazy101dog.";    int d,n;    n=getnDec(str,d);    mysort(d,n);    myout(d,n);    printf("\n");    return 0;}

请高手帮忙 C语言中不用库函数怎样将字符型数字转化成整型数字

你可以将字符型的数字与字符0做减法,得到的就是你要的整形数字了。比如下面这个例子就是将字符1变成整数1char c = ’1’;printf("%d\n",c - ’0’);不知道你要的是不是这样的效果

关于字符串转数字c++不用库函数,c++ 字符串转数值的介绍到此结束,希望对大家有所帮助。