C语言中 *b=&a什么意思 *b和&a分别是什么含义啊?

如题所述

*b=&a这种写法只有在定义时这么写才对,例如 int *b;*b=&a;是错误的,正确的是int a=1;int *b=&a;意思是说定义一个指针b,b里存的是a这个变量的地址。如果定义好了一个这真b,那么*b就指b这个变量里存的地址里的值(有点绕口,慢慢理解),&为取地址符,&a就是a这个变量的地址。
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-03-31

    (a>b)?a:b
    表示如果a>b为真,则取问号后边的第一个值,这里是a
    如果a>b不为真,则取问号后边的第二个值,这里是b

    <表达式1>?<表达式2>:<表达式3>; "?"运算符的含义是: 先求表达式1的值, 如果为真, 则执行表达式2,并返回表达式2的结果 ; 如果表达式1的值为假, 则执行表达式3 ,并返回表达式3的结果。

    若a-b非零值(即a-b逻辑值为1)则输出a值;若a-b为零值(即a-b逻辑值为0),则输出b值。

    /  代表的是 除法。如果 a 和 b 都是整数,不是 float 等这种浮点数,所以结果只保留整数,所以  a/b 算出来是整数。

    另外,% 代表的是取余数,即: 5%3 等于 1 余 2,结果就是 2

本回答被网友采纳
第2个回答  2011-06-06
说明b是一个指针变量,其定义应该是这样:int *b,a;
*是取值运算符,*b就是取b指向存储空间的值;
&是取地址运算符,&a表示取变量a的地址。
*运算符后面应该跟指针;而&后面应该跟变量名(或数组元素,或结构体变量.成员名)。
第3个回答  2011-06-06
b是一个指针变量,*b = &a是b里存的是变量a的地址
相似回答