我正在尝试找出一种获取用户输入字符并将其转换为 double 字符的方法。我试过 atof
函数,尽管它似乎只能用于常量字符。有没有办法做到这一点?这是我想做的事情的想法:
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
int main(){
char input;
double result;
cin >> input;
result = atof(input);
}
最佳答案
atof
将 string(不是单个字符)转换为 double。如果要转换单个字符,有多种方式:
- 通过附加一个空字符创建一个字符串并将其转换为double
- 从字符中减去48('0'的ASCII值)
- 使用
switch
检查是哪个字符
请注意,C 标准不保证字符代码为 ASCII,因此,第二种方法不可移植,但它适用于大多数机器。
关于c++ - 如何将用户输入的字符转换为 Double C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29485194/