当前位置: 首页 > wzjs >正文

网站推广类型扁平化网站模板下载

网站推广类型,扁平化网站模板下载,注册域名 不建网站,网站推广的看法如果您觉得这篇文章对您有帮助的话 欢迎您分享给更多人哦 感谢大家的点赞收藏评论,感谢您的支持 一:操作符讲解 //16进制的数值之前写:0x //8进制的数值之前写:0 数字以0开头会被当成8进制 0153:107(10进制&#x…

如果您觉得这篇文章对您有帮助的话
欢迎您分享给更多人哦

请添加图片描述

感谢大家的点赞收藏评论,感谢您的支持

一:操作符讲解

//16进制的数值之前写:0x
//8进制的数值之前写:0
数字以0开头会被当成8进制
0153:107(10进制)
0x6B:107

1.1(&.|.^.~):都是补码计算,最高位符号位也是按位,最后计算出来看看是+还是负,%d一律打印源码啊(有符号数)

int main()
{int n = -2;int m = 3;printf("%d\n", n & m);//2printf("%d\n", n | m);//-3printf("%d\n", n ^ m);//-1printf("%d", ~0);return  0;
}

1.2(不能创建临时变量(第三个变量),实现两个整数的交换)

int main()
{int a = 10;int b = 20;a = a ^ b;b = a ^ b;a = a ^ b;printf("%d %d", a, b);return 0;
}

1.3:计算一个数二进制有多少位1

方法一:

它会不断将 num 除以2(相当于右移一位),并检查每次操作后的最低位是否为1
(通过 num%2)。如果是,则计数器 count 增加。
110100101(先%后除)
#include <stdio.h>
int main()
{int num = 10;int count= 0;//计数while(num){if(num%2 == 1)count++;num = num/2;}printf("⼆进制中1的个数 = %d\n", count);return 0;
}

方法二:

#include <stdio.h>
int main()
{int num = -1;int i = 0;int count = 0;//计数for(i=0; i<32; i++){if( num & (1 << i) ) //(((n>>i)&i)==1)也可以,这个类似方法一count++; }printf("⼆进制中1的个数 = %d\n",count);return 0;
}

方法三:

int main()
{int num = -1;int i = 0;int count = 0;//计数while(num){count++;num = num&(num-1);//1101010111与上 下面这个//1101010110然后//1101010110与上下面这个(每次都是少一个最后一位1,本质都是方法一)//1101010101}printf("⼆进制中1的个数 = %d\n",count);return 0;
}

1.4:编写代码将13⼆进制序列的第5位修改为1,然后再改回0

13的2进制序列: 00000000000000000000000000001101
将第5位置为1后:00000000000000000000000000011101
将第5位再置为0:00000000000000000000000000001101

#include <stdio.h>
int main()
{int a = 13;a = a | (1<<4);            或上个  00010000printf("a = %d\n", a);a = a & ~(1<<4);           再与上个 11101111printf("a = %d\n", a);return 0;
}

2

2.1(逗号表达式)

逗号表达式,就是⽤逗号隔开的多个表达式。
逗号表达式,从左向右依次执⾏。整个表达式的结果是最后⼀个表达式的结果

int a = 1;
int b = 2;
int c = (a>b, a=b+10, a, b=a+1);//逗号表达式
a是否大于吧根本不重要,没啥影响,b=13
//代码2
if (a =b + 1, c=a / 2, d > 0),就是判断d是否大于0;前面一堆数字丢没有关于d的,没啥用
a = get_val();
count_val(a);
while (a > 0)
{//业务处理//...a = get_val();count_val(a);
}
如果使⽤逗号表达式,改写:
while (a = get_val(), count_val(a), a>0)
{//业务处理
}

2.2:结构体

描述一个学生
struct Stu
{char name[20];//名字int age;//年龄char sex[5];//性别char id[20];//学号
}; //分号不能丢struct Stu s2 = {.age=20, .name="lisi"};//指定顺序初始化struct Node
{int data;struct Point p;struct Node* next; 
}n1 = {10, {4,5}, NULL}; //结构体嵌套初始化
struct Node n2 = {20, {5, 6}, NULL};//结构体嵌套初始化

有时候我们得到的不是⼀个结构体变量,⽽是得到了⼀个指向结构体的指针。如下

#include <stdio.h>
struct Point
{int x;int y;
};
int main()
{struct Point p = {3, 4};struct Point *ptr = &p;ptr->x = 10;ptr->y = 20;printf("x = %d y = %d\n", ptr->x, ptr->y);return 0;
}

3.1整形提升:

(无符高位补0,有符号数高位补符号位)
11.1 整型提升
C语⾔中整型算术运算总是⾄少以缺省(默认)整型类型的精度来进⾏的。
为了获得这个精度,表达式中的字符(char)和短整型(short)操作数在使用之前被转换为普通整型,这种转换称为整型提升。

1.表达式的整型运算要在CPU的相应运算器件内执⾏,CPU内整型运算器(ALU)的操作数的字节⻓度⼀般就是int的字节⻓度,同时也是CPU的通⽤寄存器的⻓度。

2.因此,即使两个char类型的相加,在CPU执⾏时实际上也要先转换为CPU内整型操作数的标准⻓度。

3.所以,表达式中各种⻓度可能⼩于int⻓度的整型值,都必须先转换为
int或unsigned int,然后才能送⼊CPU去执⾏运算

char a,b,c;
...
a = b + c;

b和c的值被提升为普通整型,然后再执⾏加法运算。
加法运算完成之后,结果将被截断,然后再存储于a中。

3.2:算术转换

如果某个操作符的各个操作数属于不同的类型,那么除⾮其中⼀个操作数的转换为另⼀个操作数的类型,否则操作就⽆法进⾏。下⾯的层次体系称为寻常算数转换

在这里插入图片描述

4

即使有了操作符的优先级和结合性,我们写出的表达式依然有可能不能通过操作符的属性确定唯⼀的计算路径,那这个表达式就是存在潜在⻛险的,建议不要写出特别复杂的表达式。

c+--c;
同上,操作符的优先级只能决定⾃减 -- 的运算在 + 的运算的前⾯,但是我们并没有办法得知, + 操作符的左操作数的获取在右操作数之前还是之后求值,所以结果是不可预测的,是有歧义的。
http://www.dtcms.com/wzjs/577999.html

相关文章:

  • 外贸软件价格官网网站优化公司
  • o2o网站开发价格托管平台
  • 南山制作网站企业社交网站定制
  • 南靖企业网站建设公司网络电商平台有哪些
  • 推广型网站建设模板网红商城
  • 网站升级建设费用吗做网站与做游戏那个好
  • 廊坊cms模板建站企业服务平台是做什么的
  • 一流的购物网站建设只做健康产品的网站
  • 网页设计和网站建设的区别wordpress博客速度很慢
  • 网站套餐到期啥意思wordpress编辑页面改字体颜色
  • 人和动物做的电影网站百度小游戏小程序入口
  • 电商网站建设布局汉口网站建设公司
  • 阿里云建站套餐WordPress多域名无法登录
  • 网站正在建设中动画项目推广平台有哪些
  • 网站建设sem怎么做学生个人网页内容排版设计作品
  • 设计网站需要用到哪些技术找工作求职
  • 筑巢做网站怎么样宁波网络推广公司有哪些
  • 老域名怎么做新网站万网域名优惠口令
  • 设计师采集网站高端型网站制作
  • 可以做语文阅读题的网站广州最新封闭封控区域
  • 天津网站备案在哪照相手机网站广告
  • 学院网站板块做网站需要硬件设施
  • php网站开发 vip电话销售怎么做 网站
  • 无锡外贸网站制作公司企业网站如何做
  • 公司做网站的费用怎么记账廊坊高端模板建站
  • 网站基本建设的原理微信朋友圈广告投放
  • 自己的网站如何优化建设网站微商城
  • 用源码做网站步骤网站建设 中软
  • 做服装要看国外哪些网站视觉设计与制作
  • 重庆网站建设中心易做文学网站的logo