C语言
记录C语言学习过程中的知识
有裂痕的石头
埋头苦干,未来可期
展开
-
C语言sizeof和strlen的含义,用法和区别
目录strlen( )strlen( )的含义sizeof( )strlen( )strlen( )的含义strlen所作的是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到碰到第一个字符串结束符’\0’为止,然后返回计数器值(长度不包含’\0’)这是百度百科给出的strlen()的含义,说白了strlen()就是一个放在string.h这个头文件中的一个函数,其原型为: unsigned int strlen (char *s),原创 2020-12-21 20:47:31 · 873 阅读 · 0 评论 -
C语言转义字符 转义序列(内含\ddd \xhh 含义)
目录转义字符" \ddd \xhh " 的用法转义字符转义字符是很多程序语言、数据格式和通信协议的形式文法的一部分。对于一个给定的字母表,一个转义字符的目的是开始一个字符序列,使得转义字符开头的该字符序列具有不同于该字符序列单独出现时的语义。因此转义字符开头的字符序列被叫做转义序列。这是百度百科给出的转义字符定义,说白了就是有些东西你没有办法直接输入,而转义字符就可以解决这个问题。转义序列通常有两种功能。第一个是编码一个句法上的实体,如设备命令或者无法被字母表直接表示的特殊数据。第二种功能,原创 2020-12-20 23:57:21 · 8670 阅读 · 1 评论 -
C语言按位运算符 按位逻辑运算 移位运算 及其用法
目录按位逻辑运算符移位运算符按位逻辑运算符C语言提供了四种按位逻辑运算符1.按位取反(~)~运算符把0变为1,把1变为0,如下例子所示:~(0100 1001)=10110110,这里需要注意的是假设val的类型是unsigned char,已被赋值为2。在二进制中,0000 0010表示2。那么,~val的值是 1111 1101,即253。注意,该运算符不会改变val的值,但是可以这样用:val = ~val。 或者直接声明一个新的变量newval = ~val。2.按位与(&)原创 2020-12-10 01:10:20 · 3033 阅读 · 5 评论 -
浅谈C语言static关键字 静态变量 函数
目录static对变量修饰局部变量全局变量函数static对变量修饰局部变量普通局部变量存储于进程栈空间,使用完毕会立即释放。静态局部变量存储于进程的全局数据区,即使函数返回,它的值也会保持不变。普通局部变量未赋值时,打印出来的是变量对应内存中以前的数据,(因为内存中的数据不能删除,只能覆盖,给变量赋值的过程就是覆盖数据的过程),而静态局部变量(用static修饰的变量,例如:static int i;)在声明时编译器会自动给他赋值0。不管是普通局部变量还是静态局部变量,作用域皆为局部作用域原创 2020-12-09 12:53:54 · 649 阅读 · 0 评论