c语言字符怎么变成整数,c语言,字符串转换成整数
c语言的数字字符串转换为整数,1.可接受“123 2123”处理为1232123;2.空指针、正负号、非纯数字字符串、数据越界溢出的错误处理。
#include
#include
#include
//子函数的声明
int StrToInt(char * string);
void main()
{
//变量的声明
char str[20];//边界值-2147483648和2147483647,最多需要12个字符
int result;
//输入部分
printf("请输入:");
//接受输入数据
gets(str);//scanf接受到空格时中断,但gets不,例如“244 754”
//实现
result = StrToInt(str);
//输出
if(result != 0)
{
printf("结果:%d\n",result);
}
}
//把一个字符串转换成整数
int StrToInt(char* string)
{
int sign = 1;//1代表+正数,-1代表负数
__int64 number = 0;//声明为long long类型,防止数据溢出
//1.空指针的判断
if(NULL == string)
{
printf("空指针异常!\n");
return 0;
}
//2.正负号int
if(*string =='+')
{
//设置sign标记
sign = 1;
*string++;
}
if( *string =='-')
{
//设置sign标记
sign = -1;
*string++;
}
//3.由于返回值为0做了异常处理,真正的"0"需要特殊处理
if(string == "0")
{
printf("结果:0\n");
}
while(*string != '\0')
{
int normalflag0 =1;
//4.空格判断
if(*string == ' ' || *string == '\t')
{
*string++;
}
//5.非数字字符时,错误处理
if(*string < '0' || *string > '9')
{
printf("包含非数字字符!\n");
number = 0;
break;
}
//6.边界值,最大正整数和最小负整数
number = number * 10 + sign*(*string - '0');
if((sign==1 && number>INT_MAX)|| (sign==-1 && number
{
//INT_MAX和INT_MIN的头文件是表示int所能表示的最大和最小的数
printf("有符号整型超过溢出!最小到-7fffffff-1即-2147483648,最大到7fffffff即2147483647\n");
number = 0;
break;
}
string++;
}
return (int)number;
}
c语言字符怎么变成整数,c语言,字符串转换成整数相关推荐
- 判断字符为空_49. 把字符串转换成整数(剑指offer)
49. 把字符串转换成整数 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数. 数值为0或者字符串不是一个合法的数值则返回0. 输入描述: 输入一个字符串,包括数字字母符号,可以为空 输 ...
- 程序员编程艺术第三十 三十一章 字符串转换成整数,通配符字符串匹配
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 第三十~ ...
- 字符串转换成整数,带通配符的字符串匹配
之前本一直想写写神经网络算法和EM算法,但写这两个算法实在需要大段大段的时间,而平时上班,周末则跑去北大教室自习看书(顺便以时间为序,说下过去半年看过的自觉还不错的数学史方面的书:<数理统计学简 ...
- 字符串转换成整数,字符串匹配问题
本文转自csdn大神v_JULY_v的博客 地址: http://blog.csdn.net/v_july_v/article/details/9024123 阅读心得:自己原先想得太天真了... 第 ...
- 程序员编程艺术第三十~三十一章:字符串转换成整数,通配符字符串匹配
第三十~三十一章:字符串转换成整数,带通配符的字符串匹配 前言 之前本一直想写写神经网络算法和EM算法,但写这两个算法实在需要大段大段的时间,而平时上班,周末则跑去北大教室自习看书(顺便以时间为序,说 ...
- 字符串转换成整数,通配符的字符串匹配问题
http://blog.csdn.net/v_july_v/article/details/9024123#comments 前言 之前本一直想写写神经网络算法和EM算法,但写这两个算法实在需要大段大 ...
- 程序员面试题精选100题(17)-把字符串转换成整数[算法]
题目:输入一个表示整数的字符串,把该字符串转换成整数并输出.例如输入字符串"345",则输出整数345. 分析:这道题尽管不是很难,学过C/C++语言一般都能实现基本功能,但不同程 ...
- 【Java】 剑指offer(67) 把字符串转换成整数
本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集 题目 请你写一个函数StrToInt,实现把字符串转换成整数这个功能 ...
- oracle 转化为整数,字符串转换成整数——从源码学习
字符串转换成整数:输入一个表示整数的字符串,把该字符串转换成整数并输出,例如输入字符串"345",则输出整数345. 在笔试面试中,atoi 即「字符串转换成整数」是一个经典问题了 ...
最新文章
- linux系统基本操作命令
- 如何在Slack里连接微软One Drive
- android菜单展开收起,展开、收起状态栏 - Android社区 - https://www.androidos.net.cn/
- leetcode278. 第一个错误的版本(二分查找)
- pythonapp自动化_移动App Appium自动化测试教程Appium+Python 【2018年新】
- debugger怎么用_谷歌开发者工具,这些技巧你用过么?
- 一定要多反思复盘和整理
- ASP.NET MVC3 系列教程 - 目录
- GCN、GAT、凸优化、贝叶斯、MCMC、LDA
- js弹框带传值父窗口给子框_layer弹窗,父页面 子iframe 兄弟iframe之间传值,函数调用...
- java day48【 Maven 介绍 、 Maven 的使用 、Maven 常用命令 、 maven 工程运行调试 、总结】...
- ASP.NET WebAPI构建API接口服务实战演练
- Centos7下编译安装Nginx、Mysql、PHP(文章底部包含一键安装脚本)
- 机器学习(周志华)知识点总结——第3章 线性模型(后期上传word/PDF)
- java实例化是什么意思_什么是java实例化
- 天正如何转为t3_[转载]天正文件转T3格式CAD图
- Liberal Arts:志存高远
- 2018 10 12 校内模拟 字符串模拟+平面距离+线段树
- 城市系统应用其一-表征城市交通模式
- 虾皮物流怎么收费?收费标准是什么?