fun('65',1.1); //从“int”到“char”截断,从“double”到“float”截断 ?
fun(1,1); //无错 ?
1 #include<stdio.h> 2 void fun(char ch,float x){ 3 printf("...\n"); 4 } 5 int main(){ 6 fun('65',1.1); //从“int”到“char”截断,从“double”到“float”截断 ? 7 fun(1,1); //无错 ? 8 return 0; 9 }
fun方法要做什么你写清楚?不过从长数据到短数据会被显示转换会出现截取(float==》char),而短数据到长数据类型隐式转换不会出现截取(char==》float)。一般情况是这样
如果空间不够,会只取你传过去的数据由低到高取你的变量能存的字节数
楼主写的fun(1,1)这个并没有错,因为在调用fun函数时默认会将括号里面的(1,1)按照你函数定义的格式来处理,所以第一个1其实是‘1’,第二个1是1.0