c语言移位运算符怎么用(c语言移位操作技巧)

生活常识 2023-04-29 21:52生活常识www.baidianfengw.cn

  开始步入正轨,有点那味了

  选择语句

  if语句

  循环语句

  while语句

  函数

  定义一个求和函数

  数组

  一组相同类型元素的集合

  定义数组int arr[10]={0};//定义了一个存放10个整数数字的数组char ch[20};//字符型数组float arr2[5];//浮点型数组

  数组是通过下标访问元素,例如int arr[10]={1,2,3,4,5,6,7,8,9,10};通过语句printf(“%dn”,arr[4]);可以打印数字5;即arr[下标]

  操作符

  此次介绍了移位操作符

  左移操作符<<,向左移动二进制位;

  移位之后变量本身是不变的,变的是操作后产生的一个值,例如代码

  单目操作符、双目操作符、三目操作符

  所谓几目就是指的有几个操作数

  单目操作符有!a,-a,,a++;双目操作符有a+b;三目操作符有exp1?exp2:exp3,这个表达式的意思可以解释为exp1若成立,则整个表达式的值为exp2,若exp1不成立则整个表达式的值为exp3

  关键字typedef

  为类型重命名,即给一个类型起名字

  typedef unsigned int uint_32;//将unsigned int重命名为unint_32,所以unint_32也是一个类型名

  static

  1.修饰局部变量–静态局部变量使局部变量的生命周期变长

  2.修饰全局变量–静全局部变量使全局变量只能在自己所在的源文件内使用

  3.修饰函数–静态函数把函数本来的外部链接属性变成内部链接属性

  让作用范围小的变大,大的变小

  指针

  指针变量一种用来存放地址的指针变量,类型为int(这里的只是个形式,说明变量是指针变量)

  解引用根据指针变量存放的地址找到该地址的变量;变量名,(这里的是操作符)

  执行流程可以理解为房东找了一个房间出租,房间起了个名叫做a雅居,住进来个人叫10君,房东看了看a雅居的门牌号(这个过程就是&a),假设地址为0x0012ff40记在本子p上,本子的规格为int;某一天房东看10君不顺眼,想让20君住进去,房东根据本子p上的地址(即0x0012ff40)找到了10君(这个过程就是p),把他赶了出去,让20君住进去;现在去a雅居找到的人就是20君

  流程图

  int a=10;解释申请一块内存命名为a,这块内存放的值为10,这块内存的地址为0x0012ff40

  intp=&a;解释申请一块内存命名p,把a的地址放到这块内存中;这块内存p也有地址,但此时不考虑(&a就是获取a的地址)

  p=20;解释p(即解引用)根据p内存储的地址找到a,此时p就相当于a,对p的操作相当于对a进行操作;所以把20赋给p就是把20赋给a

  指针变量的大小

  指针存储的是地址,32位的机器地址是32位,也就是4个字节,所以32位的机器指针大小为4个字节;同理在64位的机器上地址是64位,占8个字节,所以所以64位的机器指针大小为8个字节

  指针变量的大小只与平台位数有关,和变量类型无关

  结构体

  用来描述复杂对象,本质是一种自定义创造出来的类型

  结构体类型内有成员,要用.操作符访问

  利用指针pb打印出书名和价格(使用.操作符打印)

  还可以使用->操作符打印,更加便捷

  .操作符和->操作符的比较

  ->操作符的使用结构是结构体指针->成员 只要定义了结构体指针变量就可以使用,直接从结构体指针变量指向成员;但.操作符的使用结构是结构体变量.成员 需要结合解引用,繁琐

  对于结构体变量的更改

  前文使用b1.prince=15;语句可以更改价格,因为prince是变量,所以可以直接更改数值;结构体中的书名name是数组名,本质上是地址,不可以直接更改,所以使用b1.name=”C++程序设计”;语句会报错不可以更改。

  想要更改如下所示

  strcpy()函数全称是strcpy-string copy,是一个字符串拷贝函数

  此函数有两个参数,strcpy(目的地,”需拷贝的字符”)

Copyright@2015-2025 白癜风网版板所有