bool isValidPrice(string s)
{
char c = s.c_str();
return true;
}
我正在尝试将字符串转换为字符,但收到错误
类型为"const char *"的值不能用于初始化类型为"char"的实体
如何成功地将字符串 s 转换为字符 c?
编辑**** 我想从字符串中放入每个单独的字符并将整个字符串转换为 c 字符串,以便我可以使用 cctype 使用 c 字符串函数。
你不能加载一个字符(通常是8位(,这是一个值,指针(32位或64位,取决于你的配置(是一个地址(s.c_str((返回字符串的起始地址(。如果要从字符串中提取某些字符,例如索引为0的字符,则可以执行以下操作:
char c = s[0];
假设字符串 s 不为空
从方法名称中,我了解到您要验证产品的价格。但是这段代码不是要检查的东西。因为如果s = "&"
那么你的代码返回 true,这应该是假的。此外,您仅检查第一个字符。对吗?我假设您将以有效的整数格式给出。
bool isValidPrice(string s)
{
if(s.length() == 0)
return false;
char c = s[0];
return true;
}