【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; } 

相关内容

热门资讯

揭秘真相!微信小程序家乡大二解... 揭秘真相!微信小程序家乡大二解码,xpoker辅助助手,攻略教程(有挂总结);致您一封信;亲爱微信小...
推荐一款!天天微友第三方辅助软... 推荐一款!天天微友第三方辅助软件下载,hhpoker辅助靠谱吗,透明挂教程(了解有挂);1、不需要A...
一分钟快速了解!牵手游戏辅助器... 您好:牵手游戏辅助器这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特...
一分钟了解!广东雀神祈福真的有... 一分钟了解!广东雀神祈福真的有用吗,wepoker好友房开挂,必赢教程(真的有挂)是一款可以让一直输...
玩家必看攻略!超级三加一辅助工... 玩家必看攻略!超级三加一辅助工具安装,德普之星私人局透视,必备教程(确实有挂);AI辅助机器人普及解...
推荐十款!钱柜手游辅助,we ... 推荐十款!钱柜手游辅助,we poker辅助器v3.3,2025新版教程(有挂教程);亲真的是有正版...
记者揭秘!手机辅助脚本工具,w... 记者揭秘!手机辅助脚本工具,wpk辅助器是真的吗,新2025教程(有挂功能);一、手机辅助脚本工具A...
玩家实测!小程序牵手跑得有辅助... 玩家实测!小程序牵手跑得有辅助器,pokernow辅助工具,2025新版(有挂细节);超受欢迎的小程...
重大科普!雀神麻将辅助透视,w... 重大科普!雀神麻将辅助透视,wepoker破解游戏盒子,新版2025教程(有挂技巧);小薇(透视辅助...
揭秘几款!乐酷辅助,wepok... 揭秘几款!乐酷辅助,wepoker底牌透视,技巧教程(存在有挂);AI辅助机器人普及解说快速成为一个...