重载stoi to_string方法

重载原因
  1. 在window下可以调用的库函数,在移植到Linux上之后,由于Linux编译版本较低,无法支持这种库函数,而框架已经搭建好,因此最简单的方法就是重载接口
stoi重载
int rstoi(std::string inputString, std::string::size_type *sz) {
	int sign = 1;
	int step = 0;
	int sum = 0;
	for (; std::isspace(inputString[step]); ++step);
	sign = inputString[step] == '-' ? -1 : 1;
	if (inputString[step] == '-' || inputString[step] == '+') {
		step++;
	}
	for (; std::isdigit(inputString[step]); step++) {
		sum = sum * 10 + inputString[step] - '0';
	}
	*sz = step;
	return sum * sign;
}
to_string 重载
#define MAX_INT_LENGTH 10

std::string loadToString(int inputValue) {

	char orderSquence[MAX_INT_LENGTH];
	char reversedSquence[MAX_INT_LENGTH];

	if (inputValue == 0) {
		reversedSquence[0] = '0';
		reversedSquence[1] = '\0';
		return reversedSquence;
	}

	int j = 0;
	int i = 0;
	if (inputValue < 0) {
		inputValue *= -1;
		reversedSquence[j++] = '-';
	}
	
	while (inputValue > 0) {
		orderSquence[i++] = inputValue % 10 + '0';
		inputValue /= 10;
	}
	orderSquence[i] = '\0';

	i -= 1;
	while (i>=0)
	{
		reversedSquence[j++] = orderSquence[i--];
	}
	reversedSquence[j] = '\0';
	return reversedSquence;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值