您的位置:首页 > 其它

专题二 符号的技巧---- 14.优先级和类型转换分析

2017-06-12 21:57 399 查看
仔细阅读如下代码:

#include<stdio.h>
#include<malloc.h>
typedef struct _demo
{
int* pInt;
float f;
}Demo;

int func(int v,int m)
{
return (v&m !=0);          //((v&m)!=0)
}

int main()
{
Demo* pD=(Demo*)malloc(sizeof(Demo));
int  *p[5];                //int* p[5];
int  *f();                 //int* f();
int i=0;
i=1,2;                   //(i=1),2;

*pD.f=0;                //*pD->f=0;
free(pD);
return 0;
}




C语言中的隐式转换

算术运算中,低类型转换为高类型

赋值运算中,表达式的值转换为左边变量的类型

函数调用时,实参转换为形参的类型

函数返回值,return表达式转换为返回值的类型



#include <stdio.h>
int main()
{
int i=-2;
unsigned int j=1;
if((i+j)>0)
{
printf(“i+j>0”);
}
printf(“i+j=%d\n”,i+j);
}
//结果:i+j>0    i+j=-1
//负数以补码(反码加一)存储
//-2=0xFFFFFFFE  +1  -->0xFFFFFFFF(unsinged int)  -->-1(int)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: