C语言表达式求值中怎么确定'-'是负数的符号还是运算符?

Python09

C语言表达式求值中怎么确定'-'是负数的符号还是运算符?,第1张

举个例子说明下

x=-1

-是负号的意思,

x-=1

-是减号的意思,

在运算口诀里

“自增自减非反负”这句中的负即是指负号

他们是单目运算符,结合性为自右向左,

这个问题是这样的。

short _a=1-.1e-1

实际上是:

short _a=1-0.1e(-1)

代码中,根据C语言的语法,做了一些省略,就这样了。

.1  实际上就是 0.1,以小数点开头的 只能是数值,把前面的0省略了;

e-1 实际上就是e(-1), 其意义是 十的负一次方

是一个运算符,其左侧的变量,要求必须是一个结构休或者类的指针,如果是C那就必须是结构体的指针,而右侧必须是结构体中的成员。注意左侧一定要是指针才正确。记住:->运算符除了用于结构体的指针访问其成员之外,没有其他的用处。比如

struct

c{int

a}

void

main()

{stuct

c

cc

struct

c

*p=&cc

p->a=1

printf("%d",p->a)

strcut

c

s

s->a

//错误,左侧一定要是结构类型的指针;

p->b

//错误,右侧一定要是指针指向的结构体中的成员

int

*i

i->a

//错误,左侧一定要是结构体的指针,其他类型的指针都是错误的。

}