市面上有很多介绍C语言的书,但这是第一本将C语言以简洁而实用的方式介绍给读者的书籍。
用C语言进行编程不仅仅是在程序中使用正确的句法,编程的风格以及程序的调试在编写程序的过程中也占有相当大的篇幅,从而有助于程序的良好运行且易于维护。
本书不仅仅向你介绍编程的机制,同时也告诉你如何创建易于阅读、调试和更改的程序。
本书也强调了实用的原则。
例如在讨论C中运算优先级时,15种级别被归纳为下面两条原则:-先乘除,后加减;
-在所有该加括号的地方都加上括号第三版除介绍UNIX上的编程工具之外,还介绍了流行的Windows系统上集成开发环境(IntegratedDevelopmentEnvironments)。
第一部分基础11第一章什么是C13编程原理14C语言简史17C如何工作17如何学习C19第二章编程基础21程序从概念到运行21编写一个真正的程序22使用命令行编译器编程23使用集成开发环境(IDE)编程27获取UNIX帮助45获取集成开发环境帮助45集成开发环境菜单45编程练习48第三章风格49基础编码练习54编码盲从56缩进与编码格式56清晰57简明58小结59第四章基本定义与表达式60程序要素60程序的基本结构61简单表达式62变量和存储64变量定义65整型66赋值语句66printf函数68浮点型70浮点数与整数的除法运算70字符73答案74编程练习75第五章数组、修饰符与读取数字76数组76串78读取串81多维数组84读取数字86变量初始化88整型90浮点型92常量说明93十六进制与八进制常量93快捷运算符94副作用95++x或x++96更多的副作用问题97答案98编程练习99第六章条件和控制语句101if语句101else语句102怎样避免误用strcmp函数104循环语句104While语句105break语句107continue语句108随处赋值的副作用109答案111编程练习111第七章程序设计过程113设置115程序规范116代码设计116原型118Makefile119测试123调试124维护126修改126代码分析127注释程序128使用调试器128用文本编辑器浏览128增加注释128编程练习131第二部分简单程序设计133第八章更多的控制语句135for语句135switch语句139switch,break和continue145答案145编程练习147第九章变量作用域和函数149作用域和类149函数153无参数的函数157结构化程序设计158递归160答案161编程练习162第十章C预处理器163*define语句163条件编译170包含文件173带参数的宏174高级特征176小结176答案177编程练习180第十一章位运算181位运算符183与运算符(&)183按位或(\)186按位异或(^)187非运算符(~)187左移与右移运算符(<>)188设置、清除和检测位190位图图形194答案200编程练习201第十二章高级类型202结构202联合205typedef207枚举类型209强制类型转换210位字段或紧缩结构210结构数组212小结213编程练习213第十三章简单指针215函数自变量指针220常量指针222指针和数组224如何不使用指针229用指针分隔字符串231指针和结构235命令行参数236编程练习242答案242第十四章文件输入/输出245转换程序249二进制和ASCII码文件252行尾难题253二进制I/O255缓冲问题257非缓冲I/O258设计文件格式264答案266编程练习267第十五章调试和优化268调试268交互调试器280调试一个二分查找程序285实时运行错误297公开
2023/11/8 22:50:27 20.09MB C语言 编程
1
c和指针高清pdf,适合大家学习提高自己的C语言能力极力推荐
2023/11/8 17:19:24 20.02MB c和指针
1
跑马灯:前面板:水平指针滑动杆——用于调节彩灯间的延时时间。
指示灯——用以显示程序运行结果。
开关——用于结束当前操作。
程序框图:本程序主要用到平铺式顺序结构和层叠式顺序结构顺序执行程序语句,用真假常量来控制灯亮与不亮。
本程序还用到了while循环和for循环,循环是用于达到闪烁和同步递进循环,整个程序几乎每一帧都用到了延时,单位是毫秒,延时的目地是使本程序更具有可观性,特别效果:单个流水闪烁·双路同步流水闪烁·四路同步流水闪烁·全体同步闪烁谢谢老师的观赏!
2023/11/8 11:35:52 408KB 跑马灯
1
内含鼠标图标:CrystalClearv3.1-MaterialLight\Cursorrubin\mac_os_x_mountain_lion_cursors_by_timvdhoorn-d5haq39\Oxygen\SlightTrasnparent\win10styreshubiaozhizhen\Windows-8-Aero-Cursors-Black\Zune2\Zune3\魅力Zune风格鼠标指针一闪一闪很迷离\
2023/11/3 21:54:55 3.72MB 鼠标图标美化
1
deepin深度主题鼠标指针
2023/11/3 13:42:52 263KB deepin深度主题指针 鼠标指针 windows 10
1
《单片机原理及接口技术》一、单项选择题1、十进制数(79.43)10的二进制数为()。
A、1001111.0110B、1111001.0110C、1111001.1001D、1001111.10012、某存储器芯片有11根地址线,8根数据线,该芯片有()个存储单元。
A、1KBB、8KBC、2KBD、4KB3、单片机复位时,堆栈指针(SP)的值是()。
A、00HB、07HC、05HD、30H4、PC的值是()。
A、当前指令前一条指令的地址B、当前正在执行指令的地址C、下一条指令的地址D、控制器中指令寄存器的地址5、下列指令或指令序列中,能将外部数据存储器3355H单元的内容传送给A的是()。
A、MOVXA,3355HB、MOVDPTR,#3355HMOVXA,@DPTRC、MOVP0,#33HMOVR0,#55HMOVXA,@R0D、MOVP2,#33HMOVR2,#55HMOVXA,@R26、80C51单片机要用传送指令访问片内程序存储器,它的指令操作码助记符是以下()。
A、MOVB、MOVXC、MOVCD、MUL7、假定设置堆栈指针SP的值为37H,在进行子程序调用时把断点地址进栈保护后,SP的值为()。
A、36HB、37HC、38HD、39H8、在80C51中,可使用的堆栈最大深度为()。
A、80个单元B、32个单元C、128个单元D、8个单元9、下列条件中,不是中断响应必要条件的是()。
A、TCON或SCON寄存器中相关的中断标志位置1B、IE寄存器中相关的中断允许位置1C、IP寄存器中相关位置1D、中断请求发生在指令周期的最后一个机器周期10、执行中断返回指令,要从堆栈弹出断点地址,以便去执行被中断了的主程序。
从堆栈弹出的断点地址送给()。
A、AB、CYC、PCD、DPTR11、下列叙述中,不属于单片机存储器系统特点的是()。
A、程序和数据两种类型的存储器同时存在。
B、芯片内外存储器同时存在C、扩展数据存储器与片内数据存储器存储空间重叠D、扩展程序存储器与片内程序存储器存储空间重叠12、PSW=18H,当前的工作寄存器是()A、0组B、1组C、2组D、3组13、MCS-51的中断允许寄存器内容为8AH,CPU可以响应的中断请求是()。
A、T1B、T0,T1C、T1,串行接口D、T014、指令AJMP的跳转范围是()。
A、64KBB、2KBC、256BD、128B15、下列指令中正确的是()。
A、MOVP2.1,AB、JBCTF0,L1C、MOVXB,@DPTRD、MOVA,R3二、填空题。
1、一个机器周期包括个状态周期,一个状态周期包含个时钟周期。
2、执行如下指令序列:MOVC,P1.0ANLC,P1.1ANLC,/P1.2MOVP3.0,C后,所实现的逻辑运算式为P3.0=。
3、假定(A)=0C3H,R0=0AAH,CY=1。
执行指令:ADDCA,R0后,累加器A的内容为
2023/11/2 19:27:50 99KB 单片机 真题
1
课程大纲每节课资料提前5天发放第1章本节大纲”破解“算法面试"Hack"theAlgorithmInterview算法面试究竟考什么史上最全的算法面试考点大全2013-2018面试难度变化如何在最有效率的准备算法面试如何在不押题的情况下更有信息的去面试2018/6/24上午9:30:00第2章本节大纲二分与LogN算法BinarySearch&LogNAlgorithm二分法三重境界二分位置之满足条件的第一次-BinarySearchonIndex-OOXX二分位置之保留一半-BinarSearchonIndex-Halfhalf二分答案-BinarySearchonResult学习BinarySearch的通用模板,不再死循环讲解SearchinRotatedSortedArray等10道高频二分搜索题2018/7/1上午9:30:00第3章本节大纲为面试而生的双指针算法TwoPointersAlgorithmTwoSum问题及他的各种扩展TwoSum&Follow-ups其他高频的双指针问题2018/7/2上午9:30:00第4章本节大纲宽度优先搜索和拓扑排序BFS&TopologicalSorting二叉树上的宽搜BFSinBinaryTree二叉树的序列化问题BinaryTreeSerialization图上的宽搜BFSinGraph拓扑排序TopologicalSorting棋盘上的宽搜BFSinChessboard2018/7/15上午9:30:00第5章本节大纲基于树的深度优先搜索Tree-basedDFS二叉树的深度优先遍历BinaryTreeDFSTraversal先序/中序/后序Preorder/inorder/postorder二叉树中的分治算法Divide&ConquerDFS模板IntroduceDFSTemplate二叉树高频面试问题递归三要素遍历算法与分治算法对比TraversevsDivideConquer2018/7/16上午9:30:00第6章本节大纲基于组合的深度优先搜索Combination-basedDFS组合类深搜CombinationDFS排列类深搜PermutationDFS图上的深搜GraphDFS非递归的深搜实现方法Non-Recursion2018/7/22上午9:30:00第7章本节大纲基于排列、图的深度优先搜索Permutation/GraphbasedDFSTBD2018/7/23上午9:30:00第8章本节大纲数据结构-栈,队列,哈希表与堆Stack,Queue,Hash&Heap哈希表Hash常用的哈希库的区别HashSetvsHashMapvsHashTable哈希表的实现原理BasicHashKnowledge哈希函数HashFunction冲突的解决方法Collision开散列OpenHashing闭散列ClosedHashing哈希扩容Rehashing哈希表高频面试题HighFrequentlyAskedHashQuestions堆堆的基本原理BasicHeapKnowledge优先队列与堆的联系和区别PriorityQueuevsHeap堆的高频面试题HighFrequentlyAskedHeapQuestions堆的代替品:TreeMap2018/7/29上午9:30:00第9章本节大纲数据结构-区间、数组、矩阵与树状数组Interval,Array,Matrix&BinaryIndexedTree数组Array子数组及相关面试题Subarray&RelatedQuestions其他高频数组问题HighFrequentAskedArrayQuestionsTBD2018/7/30上午9:30:00课程更新日志
2023/10/26 20:27:35 2.24MB 编程 算法 九章算法 动态规划
1
编写使用指针的子函数实现数组处理
2023/10/17 1:06:34 441B c语言 指针
1
编写一个模拟时钟程序,此程序在屏幕左方有一个指针式钟面,右方有两个矩形框,上面以数字方式显示日期和时间,该时间应与指针显示的时间一致.
2023/10/16 21:16:19 5.34MB vc
1
下面这个模块是我使用易语言时写补丁最常用的一个模块(当然很多也是抄的),一开始我觉得bug肯定会很多,放出去肯定又会坑很多人,后来我发现坑坑更健康,当你明白一个东西的优缺点之后,你才会更好的选择你所需要的。
所以呢,现在模块开源了,希望对某些朋友有参考意义或者说使用价值吧。
声明:大家使用过程中发现任何问题都不要来问我,请自己想办法解决。
我现在已经完全放弃易语言了,改用VC++了。
以下是全部接口:模块名称:sunflover.ec作者:bysunflover版本:2015.2自己收集的一些常用函数,方便写补丁。
@备注:自己收集的一些常用函数------------------------------.版本2.子程序Ansi2Unicode,字节集,公开,将Ansi码转换为Unicode码(返回转换后的字节集).参数Ansi,文本型,,欲转换的Ansi文本.子程序AntiDebug,逻辑型,公开,这个没啥用,效果差;可放在程序运行的第一个函数被调试返回真.子程序AntiODMenu,逻辑型,公开,这个效果较好,推荐用这个;找到OD相关句柄返回真,此函数枚举窗口通过菜单名来判定是否OD窗口。
.子程序AntiStrongOD,逻辑型,公开,这个效果还行,检测带有驱动的OD调试器此函数专门对付StrongOD插件.参数判断OD运行状态,逻辑型,可空,此参数作用:发现OD驱动时—是否检测OD运行状态作为返回值基础,默认判断运行状态.子程序Bin2Dec,整数型,公开,字节集到整数.参数Bin,字节集.子程序Bin2Hex,文本型,公开,字节集到十六进制文本.参数字节集,字节集.子程序Bin2Hex1,文本型,公开,文本型->文本型.参数Bin,文本型.子程序BinXor,字节集,公开,字节集异或.参数需异或的字节集,字节集,,返回的字节集.参数参与异或的字节集,字节集.子程序Dec2Hex,文本型,公开,十到十六.参数十进制转换数据,长整数型.子程序GetAPIAddress,整数型,公开,失败返回0.参数模块名,文本型,,如"user32.dll","kernel32.dll".参数API,文本型,,如“CreateWindowExA”.子程序Hex2Bin,字节集,公开,十六进制文本到字节集.参数原文,文本型.子程序Hex2Bin1,文本型,公开,文本型->文本型.参数Hex,文本型.子程序Hex2Dec,整数型,公开,十六到十.参数十六进制转换数据,文本型.子程序InjectDll,逻辑型,公开,向目标进程中注入一个指定Dll模块文件;注入成功返回true,注入失败则返回false,CreateRemoteThread法.参数进程ID,整数型,,进程PID.参数DLL文件名,文本型,,欲注入的DLL名称.子程序InjectDLL1,逻辑型,公开,SuspendThread,shellcode,SetEip.参数PID,整数型.参数DLL路径,文本型.子程序InjectDLL2,逻辑型,公开,codecave,与InjectDLL1同.参数进程ID,整数型.参数DLL文件名,文本型.子程序inline_patch,逻辑型,公开,失败返回假,成功返回真;
适合patch尚未运行的加壳或不加壳的可执行文件.参数文件名,文本型,,文件全路径.参数模块名,文本型,,如"user32.dll".参数API,文本型,,如“CreateWindowExA”.参数地址,整数型,,如Hex2Dec(“00401000”).参数数据,字节集,,如Hex2Bin(“90909090”).子程序inline_patch_Pro,逻辑型,公开,失败返回假,成功返回真;
适合patch尚未运行的加壳不加壳的可执行文件,需要补丁的数据较多时建议使用这个,在子程序中打补丁.参数文件名,文本型,,文件全路径.参数模块名,文本型,,如"user32.dll".参数API,文本型,,如“CreateWindowExA”.参数子程序指针,子程序指针,,如&子程序1.子程序inline_patch_Pro1,逻辑型,公开,失败返回假,成功返回真
2023/10/13 4:13:48 545KB InlinePatch
1
共 311 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡