“在c语言中,s*=fun()是什么意思”??
应该是: s*=fun();
如果说这个语句是合法的(即它其中的各函数和变量都已经正确声明)
那么既然这样的话:
s 应该是一个变量(具体什么类型不清楚)
fun() 非常明显是一个已经定义的函数(且这个函数一定有一个返回值)
*= 是c中的赋值运算符中的一种(复合赋值运算符号),这里的*=表示s的值要先乘上fun函数的返回值 然后再将得到的乘积赋值给s自己 逻辑上等价于下面:
s*=fun() 等价于 s=s*fun();
很明显了,这个语句的意思在第1,2,3步中已经解释了。
2个知识点:复合赋值运算符,函数作为表达式的一部分。
定义中表示这是个指针 例 int *p=NULL;
语句中表示解引用,即取得指针所指变量的值
例 int a=0,*s=&a;
*s即取出指针s所指向变量a中值*(&a),即0
你好,*s表示s是一个指针。*s表示s指针指向的相应变量的值。
比如。
int *s;
int沪厂高断薨登胳券供猾 a = 10;
s = &a;
*s这个时候指向的是int类型的变量a,*s等于a的值,也就是10.