![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
C语言中\=是什么意思
!='\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语言运算符
![](https://ecmc.bdimg.com/public03/b4cb859ca634443212c22993b0c87088.png)
2024-08-21 广告
!='\0'.就是运行到字符串结尾时结束。
!的意思是非,亦可以理解成不。‘\0’是字符串的结束符号,由编译器自动加上。
比如说,把一个字符串赋值给数组:u8 str1[]={"cxjr.21ic.org"};实际上数组str1在内存中的实际存放情况为: c x j r . 2 1 i c . o r g '\0' 这后面的'\0'是由C编译系统自动加上的。
所以在用字符串赋初值时一般无须指定数组的长度, 而由系统自行处理。 把字符数组str1中的字符串拷贝到字符数组str2中。串结束标志'\0'也一同拷贝。
但是……也有一些例外情况发生。比如,当数组长度不够。假设我们指定了数组长度,如:u8 str1[13]={"cxjr.21ic.org"};由于字符组str1的长度为13,所以后面的信息会丢失,即'\0'丢失。
另外,如果在给数组赋值时,把每个字符单独用引号括起来。也会丢失'\0'。如:u8 str1[]={'c','x','j','r','.','2','1','i','c','.','o','r','g'};如果希望数组以'\0'结束,则要么写成:u8 str1[]={"cxjr.21ic.org"};要么写成(人工添加'\0'):u8 str1[]={'c','x','j','r','.','2','1','i','c','.','o','r','g','\0'};要么写成(故意给数组预留一个空位):u8 str1[14]={'c','x','j','r','.','2','1','i','c','.','o','r','g'};。
扩展资料:
C语言书写规则:一个说明或一个语句占一行;用{} 括起来的部分,通常表示了程序的某一层次结构。{}一般与该结构语句的第一个字母对齐,并单独占一行;低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。以便看起来更加清晰,增加程序的可读性。在编程时应力求遵循这些规则,以养成良好的编程风格。
参考资料:
printf("%d ",'\a'); 输出 7
printf("%c ",'\a'); 发出一声“嘀”
printf("\a"); 发出一声“嘀”
printf("\007"); 发出一声“嘀”
不太常见的C语言的转义字符:
\a 响铃(BEL) 7
\b 退格(BS) 8
\f 换页(FF)12
\v 垂直制表(VT) 11
\t 水平制表(HT) 9
\0 空字符(NULL)0
\数数数 3位8进制, 数0,1,....7
\x数数 2位16进制, 数0,1,....9,a,..f
是\=啊亲 这不是赋值的吗
算是赋值吗
嗯 a /= 2 -> a = a / 2