c语言,搞不懂下面这几行什么意思,求大神指点
uchar a;
while(1)//这行懂
{
a++;
P1=~a;
c语言中:char是指有符号型变量,全称为signed char,一般缩写为char,范围是-128~127。uchar在c语言中不存在,会出现语法错误。unsigned char 是无符号型变量范围是 0~255。
当然,如果前面有定义又是另外一回事,也就是有 define uchar unsinged char
如果没有这句,就错了,如果有,那就是 unsinged cahr一样的功能。
a++等于:a=a+1
P1=~a:是表达式,其功能是按位求反;
如: a=25,二进制数为: 00011001,~a的值为: 11100110,P1(假设int型)的值为:-26,二进制数为: 11100110
uchar a;//uchar在c51 中是无符号字符型,即 unsigned char,使用时需要包括头文件#include<reg51.h> (这里面已经加进了uchar的宏定义) 。
while(1)//这行你懂
{a++;//相当于a=a+1;
P1=~a;//~操作符的意思是按位取反,所以这句话就是把a按位取反后赋值给P1
上一篇:函数求导问题
热门标签: