!='\0'就是运行到字符串结尾时结束。
!的意思是非,亦可以理解成不,‘\0’是字符串的结束符号,由编译器自动加上。
比如灶悄搏,把一个字符串赋值给数组:u8str1[]={"cxjr。21ic。org"};实际上数组str1在内存中的实际存放情况为:cxjr。21ic。org'\0'这后面的'\0'是由C编译系统自动加上的。
所以在用字符串赋初值时一般无须指定数组的长度,而由系统自行处理。把字符数组str1中的字符串拷贝到字符数组str2中。串结束标志'\0'也一同拷贝。
分类和级别
C语言的运算符主要用于构成隐祥表达式,同一个符号在不同的表达式中,其作用并不一致。运笑下面按计算的优先顺序,分别说明不同作用的表达式。需要特别指出,在C语言标准中,并没有结合性的说法。
相同优先级运算符,从左至右依次运算。注意后缀运算优先级高于前缀。因此++i++应解释为++(i++)。而与或非的运算优先级都不一样,因此a && b || b && c解释为(a && b) || (b && c)合理使用优先级可以极大简化表达式。
以上内容参考:百度百科-C语言运算符
标签:C语言