C 如何让strtok()返回十进制数而不是整数?
我有一个函数,它读入一个文件并将其打印成网格 这是文件(输入): 但当它打印出矩阵时,它只返回整数(输出): 如何让函数打印出十进制数 想要的输出(即):C 如何让strtok()返回十进制数而不是整数?,c,matrix,decimal,strtok,C,Matrix,Decimal,Strtok,我有一个函数,它读入一个文件并将其打印成网格 这是文件(输入): 但当它打印出矩阵时,它只返回整数(输出): 如何让函数打印出十进制数 想要的输出(即): 你的问题不是strtok,而是: double newVal = strtol(value, &ptr, 10); strtol将字符串转换为long,而不是double,因此它将丢弃小数部分。改用strtod double newVal = strtod( value, &ptr ); “我有一个函数,可以读入文件并打印
你的问题不是strtok,而是:
double newVal = strtol(value, &ptr, 10);
strtol
将字符串转换为long
,而不是double
,因此它将丢弃小数部分。改用strtod
double newVal = strtod( value, &ptr );
“我有一个函数,可以读入文件并打印”-->发布代码。
2 2
1.83 5.64
7.36 4.10
double newVal = strtol(value, &ptr, 10);
double newVal = strtod( value, &ptr );