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语言,字符串转换成整数相关推荐

  1. 判断字符为空_49. 把字符串转换成整数(剑指offer)

    49. 把字符串转换成整数 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数. 数值为0或者字符串不是一个合法的数值则返回0. 输入描述: 输入一个字符串,包括数字字母符号,可以为空 输 ...

  2. 程序员编程艺术第三十 三十一章 字符串转换成整数,通配符字符串匹配

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 第三十~ ...

  3. 字符串转换成整数,带通配符的字符串匹配

    之前本一直想写写神经网络算法和EM算法,但写这两个算法实在需要大段大段的时间,而平时上班,周末则跑去北大教室自习看书(顺便以时间为序,说下过去半年看过的自觉还不错的数学史方面的书:<数理统计学简 ...

  4. 字符串转换成整数,字符串匹配问题

    本文转自csdn大神v_JULY_v的博客 地址: http://blog.csdn.net/v_july_v/article/details/9024123 阅读心得:自己原先想得太天真了... 第 ...

  5. 程序员编程艺术第三十~三十一章:字符串转换成整数,通配符字符串匹配

    第三十~三十一章:字符串转换成整数,带通配符的字符串匹配 前言 之前本一直想写写神经网络算法和EM算法,但写这两个算法实在需要大段大段的时间,而平时上班,周末则跑去北大教室自习看书(顺便以时间为序,说 ...

  6. 字符串转换成整数,通配符的字符串匹配问题

    http://blog.csdn.net/v_july_v/article/details/9024123#comments 前言 之前本一直想写写神经网络算法和EM算法,但写这两个算法实在需要大段大 ...

  7. 程序员面试题精选100题(17)-把字符串转换成整数[算法]

    题目:输入一个表示整数的字符串,把该字符串转换成整数并输出.例如输入字符串"345",则输出整数345. 分析:这道题尽管不是很难,学过C/C++语言一般都能实现基本功能,但不同程 ...

  8. 【Java】 剑指offer(67) 把字符串转换成整数

      本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集   题目 请你写一个函数StrToInt,实现把字符串转换成整数这个功能 ...

  9. oracle 转化为整数,字符串转换成整数——从源码学习

    字符串转换成整数:输入一个表示整数的字符串,把该字符串转换成整数并输出,例如输入字符串"345",则输出整数345. 在笔试面试中,atoi 即「字符串转换成整数」是一个经典问题了 ...

最新文章

  1. linux系统基本操作命令
  2. 如何在Slack里连接微软One Drive
  3. android菜单展开收起,展开、收起状态栏 - Android社区 - https://www.androidos.net.cn/
  4. leetcode278. 第一个错误的版本(二分查找)
  5. pythonapp自动化_移动App Appium自动化测试教程Appium+Python 【2018年新】
  6. debugger怎么用_谷歌开发者工具,这些技巧你用过么?
  7. 一定要多反思复盘和整理
  8. ASP.NET MVC3 系列教程 - 目录
  9. GCN、GAT、凸优化、贝叶斯、MCMC、LDA
  10. js弹框带传值父窗口给子框_layer弹窗,父页面 子iframe 兄弟iframe之间传值,函数调用...
  11. java day48【 Maven 介绍 、 Maven 的使用 、Maven 常用命令 、 maven 工程运行调试 、总结】...
  12. ASP.NET WebAPI构建API接口服务实战演练
  13. Centos7下编译安装Nginx、Mysql、PHP(文章底部包含一键安装脚本)
  14. 机器学习(周志华)知识点总结——第3章 线性模型(后期上传word/PDF)
  15. java实例化是什么意思_什么是java实例化
  16. 天正如何转为t3_[转载]天正文件转T3格式CAD图
  17. Liberal Arts:志存高远
  18. 2018 10 12 校内模拟 字符串模拟+平面距离+线段树
  19. 城市系统应用其一-表征城市交通模式
  20. 虾皮物流怎么收费?收费标准是什么?

热门文章

  1. C语言输出杨辉三角形
  2. java基础实现简单的资源下载小工具
  3. 国鼎代理极海APM32F030x8系列MCU手持式激光测距仪应用方案
  4. 脑洞大开,聊聊荒野乱斗英雄设计
  5. delphi html 表格控件,Delphi TTable 组件
  6. js 获取当前星期跟年月日
  7. 嵌入式STM32入门之STM32点灯实践(2)——HAL库
  8. ximalaya一键音频保存到电脑
  9. 淘宝购物车页面 智能搜索框Ajax异步加载数据
  10. AI 对抗超级细菌:麦克马斯特大学利用深度学习发现新型抗生素 abaucin