使用atoi时报错

在按行读入字符串并转为数字时报错:

	while (getline(cin,str))
	{		
		if (str.size() == 0) break;
		istringstream iss(str);
		while (iss >> num)
		{
			int score=atoi(num);
		}
		
	}

error: cannot convert ‘std::string’ to ‘const char*’ for argument ‘1’ to ‘int atoi(const char*)’
原因:atoi接受const char*型,而参数为std::string型
解决方法:改为

int score=atoi(num.c_str());
上一篇:atoi()函数解析以及缺陷分析,以及对atoi()、atof()的改造


下一篇:LeetCode 初级算法题(字符串)6.字符串转换整数 (atoi)