如题所述
C语言中&是什么意思?a&b怎么理解?
&在C语言中可能表示两种运算子。
如果运算物件只有一个,且为右运算元,那么&为取地址运算子,结果为操作物件的地址。例如&a(假设a是一个左值,即具有具体的可访问的地址)结果为a的地址。
如果运算物件有两个,那么&表示位与运算。结果中的每一个二进位制位等于两个运算数的对应位置的二进位制位按位与。每一个位的位与运演算法则是,当且仅当运算数都为1时结果为1,即:1 & 1 == 1,1 & 0 == 0 & 1 == 0 & 0 == 0。
例如:
char a,b;
a=0xc5;/*a=10100101b;*/
b=0xdd;/*b=11011101b;*/
c=a&b;/*c=10000101b*/
结果是c==0x85。( l18230365 错误,11111101b是位或a|b的结果。)
----
[原创回答团]
c语言中,-i++是什么意思,怎么理解?
这个问题询问的是一个表示式里出现了2个运算子,询问运算的优先顺序:谁先算,谁后算。
假设i的初值为1,-i++将访问i的值1,对其做取负运算,表示式的值为-1;
++在这里是一个右结合的运算子,先引用后增加1,在求解出表示式的值之后,i自增为2.
在c语言中那%是什么意思?怎样理解?
1 %在表示运算子时,表示取余数。如23%5=3,表示23除以5的余数是3。
2 %在printf,scanf函式中使用时,与其他字元一起表示格式控符。如:
int i;定义型变数i
scanf("%d",&i);%d表示以十进位制格式输入变数i的值。
printf("%x\n",i);%x表示以十六进位制格式输出变数i的值。
c语言中if(!(i%2))是什么意思 !不理解
这个的意思是对i%2的结果进行一个非运算,如果i%2不是0则为真,否则为假(计算机里不为0都是真),取个非以后,假变真,真变假!
比如你i%2不是0,取非以后变成假,则if不会执行,如果i%2后是0,取非以后变成真,if就会执行了
在C语言中unsigned是什么意思,如何理解?
加入unsigned 关键字 表名不含负数。
比如 int 范围-32768~32767
而 unsigned int 范围 0~65535
C语言中mid=len/2-1; 是什么意思,怎么理解?
MID(text,start_num,num_chars)
text
字串表示式,从中返回字元。如果 text 包含 Null,则返回 Null。
start_num
text 中被提取的字元部分的开始位置。如果 start 超过了 text 中字元的数目,Mid 将返回零长度
字串 ("")。
num_chars
要返回的字元数。如果省略或num_chars 超过或等于文字的字元数(包括 start 处的字元),将返回字串中从 start_num到字串结束的所有字元。
意思是:返回【姓名】中 从第二个字元开始长度为【姓名】长度-1的字串
比如:Mid("姜子牙",2,Len("姜子牙")-1)返回的就是 “子牙” 去除掉了 姓
C语言中fun(a,b)是什么意思
这样的写法在C语言中表示呼叫。
具体有两种可能。
1 函式呼叫。
如果fun是一个函式,这里表示呼叫对应函式,执行该函式的功能。a,b两个变数为函式的实参。
2 巨集呼叫。
如果fun是一个带引数的巨集,fun(a,b)为呼叫该巨集,程式会将a,b替换到巨集的对应位置执行。
3 区分巨集和函式。
查询定义位置,如果为#define fun(x,y) 的形式,则为巨集。
如果为
type fun(var1_type x, var2_type y)
的形式,则为函式。
a,b作为要传递给fun()函式的变数,fun(a,b)---就是把a和b作为两个引数传给fun.要是先看a,这个语句的意思其实就是顺序执行a,然后a的值作为第一个引数传递给fun。至于b,即是直接将b的值传给fun。
C语言中if(a!=b)的a!是什么意思
不等于,如果a不等于b执行if下面的语句,!=是不等于号。
C语言中:a+++b是什么意思
a+++b其实意思就是执行两个指令,首先求a和b的和,然后再将a的值加1