关于3-8编程练习
来源:3-15 作用域
慕圣7542608
2017-09-19 05:44:12
老师您好,上一个编程联系中我顺利得到了结果,只是想多了解一下背后的原理,这是我的作业:
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
// 1、 初始化一个整型变量a,并赋值5
int a = 5;
// 2、 初始化一个浮点型变量b,并赋值2.2
float b = 2.2;
// 3、 初始化一个布尔型c,并赋值false
bool c = false;
// 4、 初始化一个整型变量d,并将a+b+c的值赋值给d
int d = a + b +c;
// 5、 打印输出d的值
NSLog(@"d=%d",d);
}
return 0;
}
为什么我定义了一个 int和一个float,并没有进行数据类型转化,结果出来的不是7.2 却是7呢?
请解释一下 bool在此程序中的左右,“true”“false”是针对哪个数据而言的呢?
为什么true的时候是8,false的时候就变成了7呢?
谢谢老师
1回答
Tender10
2017-09-19
1、您好,因为d是int类型的,所以5+2.2最终能显示的也就只能是7了。
2、true代表正确系统会认为是数字1,false不正确默认数字是0。
相似问题