我只是Objective-C的初学者。
下面是温度计算器。
我在互联网上找到了解决方案。问题是scanf。
首先,我将f设置为double,但程序有问题。
所以我把它改成浮动。
请问在objective-c中scanf功能发生了什么?
只能设置character,int和float?
另一个问题是,如果我想设置一个double,在另一个只接受双变量的函数中使用该怎么办?
由于
int main(int argc,const char * argv []) {
@autoreleasepool {
double c;
float f;
NSLog(@"Please enter F temp");
scanf("%f", &f);
c = (f-32) / 1.8;
//c = 1.3E-3;
// insert code here...
NSLog(@"The C temp is %.3f", c);
}
return 0;
}
答案 0 :(得分:0)
%f
使用float
,%lf
使用double
。但是请务必检查scanf()
(或sscanf()
)的返回值,以确保它解析了正确数量的值:
double d;
printf("Entry thy number mortal: ");
if (scanf("%lf", &d)) == 1) {
printf("Oh that's nice, you entered %f\n", d);
}