对于操作数的左位移都是相同的,右边空出来的位置用0补齐. 但是对于右位移,对于有符号和无符号数是不一样的,最高位的1有两种处理方式.逻辑位移和算术位移. 逻辑位移:右移入位用0补齐 算术位移:右移入位用原先的该值得符号位决定. #include <stdio.h> int main() { int num = -128; printf("%08x\n",num); num = num >> 4; printf("%08x\n",num); n…
5.4的习题:编写一组函数,实现维数组,函数原型如下: //指定位设置为1void set_bit(char bit_array[], unsigned bit_number); //指定位清零 void clear_bit(char bit_array[], unsigned bit_number); //指定位清零,否则设置为1void assign_bit(char bit_array[], unsigned bit_number, int value); //参数指定位置为1返回真,为0…
下列输出的值: #include <stdio.h> int func(){ static int count = 1; return ++count; } int main() { int answer = 0; answer = func() - func() * func(); printf("%d\n", answer); return 0; } answer = 2 - 3 * 4; 所以结果 -10: 5.3 编写函数 unsigned int reverse_…
1.有符号的值得右移位操作是不可移植的 2.移位操作的位数是个负数,是未定义的 3.连续赋值的各个变量的长度 不一,导致变量值截断. #include <stdio.h> int main() { char chr_num; int int_num; //截断 int_num = chr_num = 100000; return 0; } 编译器提示: 4.条件语句勿用=代替== 5.勿用 | 代替||, & 代替 && 6.不同的用于表示布尔值的非零值之间进行比较.…
Chapter5.h #ifndef __CHAPTER_5_ #define __CHAPTER_5_ /*<深入理解C指针>学习笔记 -- 第五章*/ /*不应该改动的字符串就应该用 const char* 去修饰*/ size_t __strlen_test(const char*); /*返回字符串的几种方法*/ char* __return_str__test(); #endif Chapter5.cpp #include "Chapter5.h" #includ…
第五章 操作符和表达式 这一章假设没做过玩过单片机.汇编的话,读起来可能比較吃力,尤其是在移位运算符.位运算符应用上.另外多注意一下左值和右值的理解. 总结: 算术操作符.赋值操作符.关系操作符.条件操作符. 短路求值(short-circuited evalution):如||这种二目操作符,假设它的左操作数是真,右操作数便不再求值.带来的后果是假设右操作数的数组下标不合法,那么也不会报错. C并不具备显式得布尔类型,布尔值是用整型表达式来表示的.在表达式中混用布尔值和随意的整型值可能会产生错…
第五章 文件读写 by flamephoenix 一.打开.关闭文件二.读文件三.写文件四.判断文件状态五.命令行参数六.打开管道 一.打开.关闭文件   语法为open (filevar, filename),其中filevar为文件句柄,或者说是程序中用来代表某文件的代号,filename为文件名,其路径可为相对路径,亦可为绝对路径.    open(FILE1,"file1");    open(FILE1, "/u/jqpublic/file1");  打开…
第五章   JavaScript对象及初识面向对象 一.对象 在JavaScript中,所有事物都是对象,如字符串.数值.数组.函数等. 在JavaScript对象分为内置对象和自定义对象,要处理一些复杂的逻辑时,需要用户自定义对象: 自定义对象语法:var 对象名称=new  Object( ); JavaScript的内置对象是一种特殊的数据,常见的内置对象有: String(字符串) 对象 Date(日期)对象 Array(数组)对象 Boolean(逻辑)对象 Math(算数)对象 Re…
目录 第五章.前端之JQuery 一.选择器 二.基本筛选器 三.样式操作 四.位置操作 五.文本操作 六.属性操作 七.文档处理 八.事件 九.动画效果 十.补充 第五章.前端之JQuery 一.选择器 id选择器 $("#id") 标签选择器 $("tagname") class选择器 $(.classname) *选择器 $("*") 组合选择器 $(.classname,tagname) 层级选择器 $("x y");…
Java程序设计(2021春)--第五章输入输出笔记与思考 本章概览: 异常处理简介 程序运行时,环境.操作等可能出现各种错误.故障,我们希望程序具有容错能力,给出错误信息.面向对象的程序设计里有异常处理机制,即,将程序的主要逻辑和容错处理逻辑分开,发现异常的地方不一定是处理异常的地方. 输入/输出流的概念 流:Java将信息的输入输出看作程序的流动,输出流就是将数据从程序空间输出到别的空间的通道:输入流同理. 文件读写 目录 Java程序设计(2021春)--第五章输入输出笔记与思考 5.1.…