我的理解之——C语言指针 虽然我是电信专业的,大学期间,学过C,C++,但是因为贪玩,其实啥都不懂,考试能抄就抄,不能抄就交钱补考呗,反正文凭被我混到手了,哈哈! 对于C语言这门学科,基本上我是在毕业1年之后,在工作中被逼无赖才开始学的。之前都是51的汇编哦,哈哈! 因为当时看到别人都用C语言写程序,感觉很高级,很牛... 2023-06-13 C语言指针C语言程序设计编程文章基础课C语言基础
#define的使用技巧 1,防止一个头文件被重复包含#ifndef COMDEF_H#define COMDEF_H//头文件内容#endif2,重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移植。typedef unsigned charboolean;typedef unsigned long int uint32;typedef unsigned shortuint1... 2023-06-13 define使用技巧C语言程序设计宏定义文章基础课C语言基础
曾经遇到的一个c语言面试题 先看看我自己的答案(方法一):unsigned char Count(unsigned char byt){unsigned char num=0;while (byt){num += (byt & 0×01);byt >>= 1;}return num;}不管有多少个1都要循环8次,执行效率不高,但是执行该函数的时间每次都是确定的。方法二:直接的方法就是除以2向右移位, ... 2023-06-13 C语言面试题面试C语言程序设计文章基础课C语言基础
用异或来交换两个变量能提高速度是错误的 翻转一个字符串,例如把"12345"变成"54321",这是一个最简单的不过的编码任务,即便是C语言初学者的也能毫不费力地写出类似如下的代码://版本一,用中间变量交换两个数,好代码void reverse_by_swap(char* str, int n){char* begin = str;char* end = str + n - 1;while (begin... 2023-06-13 异或交换两个变量C语言程序设计文章基础课C语言基础
C语言字节序比特序 按位定义一个结构体struct s_DosAttributes{unsigned ReadOnly :1;unsigned Hidden :1;unsigned System :1;unsigned VolumeID :1;unsigned Directory :1;unsigned Archive :1;unsigned reserved :2;};这个结构共占用4个字节, ReadOnly占... 2023-06-13 C语言字节序比特序C语言程序设计文章基础课C语言基础
PIC单片机程序设计需要注意的一些问题及看法 一、区分指令的大小写编写PIC单片机的源程序,除了源程序的开始处需要严格的列表指令外,还须注意源程序中字母符号的大小写规则,否则在PC机上汇编程序时不会成功。在源程序中都会使用伪指令INCLUDE。这条指令将列表中指定的单片机文件(在MPLAB中)渎入源程序作为源程序的一部... 2023-06-13 PIC单片机C语言程序设计常见问题文章单片机
冒泡排序与插入排序比较 在浏览程序后我发现他使用了冒泡排序:void bubbleSort( int sort[], unsigned char len ){char i,j;int temp;len -= 2;for( i =len; i>=0; i--){for( j =0; j<=i; j++){if( sort[j+1] < sort[j]){temp = sort[j];sort[j]... 2023-06-13 冒泡排序插入排序C语言程序设计文章基础课C语言基础
二维数组如何进行冒泡排序 写的代码可能有缀余的地方,不过是为了好理解,有些地方可以简化,但是简化之后可能对于刚开始学c语言的通来说不好理解。一维数组进行冒泡排序很简单,二维数组冒泡排序有点麻烦,不过只要你会了一维数组冒泡排序看这些内容很简单。其实可以直接对二维数组进行冒泡,但是为了好理解,... 2023-06-13 数组二维数组冒泡排序C语言程序设计文章基础课C语言基础
C语言位运算符在程序中的作用 C语言运算符主要包括:与、或、异或、取反、左移和右移。一、按位与(&)如果两个相应的二进制位都为1,则该位的结果值为1,否则为0应用:1.清零若想对一个存储单元清零,即使其全部二进制位为0,只要找一个二进制数,其中各个位符合一下条件:原来的数中为1的位,新数中相应位为0。然后使二者... 2023-06-13 C语言位运算符C语言程序设计异或文章基础课C语言基础