【C语言习题】39.模拟实现atoi
创始人
2024-12-26 20:39:18
0次

文章目录

    • 作业标题
    • 作业内容
    • 代码


作业标题

模拟实现atoi

作业内容

自行了解库函数atoi的功能,学习使用,并模拟实现atoi函数。

文档链接:atoi - C++ Reference (cplusplus.com)

代码

//atoi    将一个字符串转化为一个整型 #include #include #include #include enum state { 	Value, 	ErrValue }; state statue = ErrValue; int my_atoi(const char*str) { 	assert(str);   	char* p = (char*)str;   	long long n = 0; 	int flag = 1; 	//字符串长度为0 	if (*str == '\0') 	{ 		return 0; 	} 	//字符串前面有很多空格 	while (*p == ' ') 	{ 		p++; 	} 	//判断符号 	if (*p == '+') 	{ 		flag = 1; 		p++; 	} 	else if (*p == '-') 	{ 		flag = -1; 		p++; 	} 	//开始计算 	while (*p!='\0') 	{ 		if (isdigit(*p)) 		{ 			n = n * 10 + flag * (*p - '0'); 			if (n >INT_MAX) 			{ 				n = INT_MAX; 				break; 			} 			else if (n < INT_MIN) 			{ 				n = INT_MIN; 				break; 			} 		} 		else 		{ 			break; 		} 		p++; 	}   	if (*p == '\0') 	{ 		statue = Value; 	}   	return (int)n; }/**  特殊情况  1前面有一大堆空格  2传过来空指针  3字符串长度为0  4整形溢出  5含有其它字符  */ int main() { 	char arr[] = "12345678"; 	int m = my_atoi(arr); 	if (statue == Value) 	{ 		printf("%d\n", m); 	} 	if (statue == ErrValue) 	{ 		printf("非法转化\n"); 	}   	return 0; } 

相关内容

热门资讯

玩家必备科普透视挂!祺友互娱透... 玩家必备科普透视挂!祺友互娱透视挂多功能AIapp,祺友互娱都是有透视挂app1、下载好祺友互娱透视...
2024教程外挂!闲逸斗地主外... 2024教程外挂!闲逸斗地主外挂多功能AI方法,闲逸斗地主本来是有外挂方法1、让任何用户在无需闲逸斗...
玩家必看科普外挂!久久互娱外挂... 玩家必看科普外挂!久久互娱外挂多功能AI插件,久久互娱一直是有外挂插件1、久久互娱免费辅助多个强度级...
重大推荐开挂!新老夫子开挂多功... 重大推荐开挂!新老夫子开挂多功能AI技巧,新老夫子好像有开挂技巧1、让任何用户在无需新老夫子安装教程...
分享认知透视挂!君悦来透视挂多... 分享认知透视挂!君悦来透视挂多功能AI工具,君悦来确实真的是有透视挂工具1、起透看视 君悦来辅助软件...
专业讨论外挂!微乐广西麻将外挂... 专业讨论外挂!微乐广西麻将外挂多功能AI软件,微乐广西麻将其实存在有外挂软件亲,关键说明,微乐广西麻...
盘点一款作弊器!玄龙大厅作弊器... 盘点一款作弊器!玄龙大厅作弊器多功能AI工具,玄龙大厅竟然真的有作弊器工具1、实时玄龙大厅透视辅助更...
每日必看辅助!MG棋牌辅助多功... 每日必看辅助!MG棋牌辅助多功能AI教程,MG棋牌切实真的有辅助教程1、进入到MG棋牌是否有挂之后,...
玩家必备科普开挂!南京麻将开挂... 玩家必备科普开挂!南京麻将开挂多功能AI软件,南京麻将确实存在有开挂软件1、该软件可以轻松地帮助玩家...
专业讨论外挂!欢乐茶馆外挂多功... 专业讨论外挂!欢乐茶馆外挂多功能AIapp,欢乐茶馆真是是真的有外挂app欢乐茶馆破解侠是真的助透视...