C语言
文章平均质量分 63
是你的甜甜呀
尚在学习中,敬请指教!!!
展开
-
大小端问题
最近在刷题的过程中遇到好多关于大小端问题的题目看得多了,有点把自己带入了一个思维误区,我可以很清楚的理解数据在大小端不同机器中的存储,可是在打印值时,越想越混乱,不知道该用怎样的语言来解释在VS中验证,我用的是小端机器(在文章后面会有验证)从这里可以看出78被存在低地址中有两种方式可以验证机器是大端机器还是小端机器(1)联合体的内存大小为原创 2017-04-03 11:46:55 · 701 阅读 · 0 评论 -
模拟实现库函数Strcpy
模拟Strcpy#include #include char * my_strcpy(char *dest,const char *src){char *ret = dest;assert((dest != NULL) && (src != NULL));while (*dest++ = *src++){;}return ret;}int m原创 2016-12-03 23:45:41 · 467 阅读 · 0 评论 -
复杂链表的构成与复制
复杂链表的构成与复制 复杂链表的复制。一个链表的每个节点,有一个指向next指针指向下一个节点,还有一个random指针指向这个链表中的一个随机节点或者NULL,现在要求实现复制这个链表,返回复制后的新链表。 复杂链表的结构 typedef struct ComplexNode{ DataType _data ; // 数据 stru原创 2017-07-17 15:54:38 · 427 阅读 · 0 评论 -
C与C++的常错小细节
C与C++的常错小细节1.fork()系统调用是Unix下以自身进程创建子进程的系统调用,一次调用,两次返回。如果返回值是0,则表示是子进程,如果返回值>0,则表示是父进程。在fork()调用处整个父进程空间会原模原样地复制到子进程中,包括指令、变量值、程序调用栈、环境变量、缓冲区等。2.const char *node="ABC"; 指向字符常量的指针 *node的值不原创 2017-07-09 11:57:55 · 427 阅读 · 0 评论 -
预处理标识符
常用预处理标识符有__LINE____FILE____DATE____TIME__可以当作变量直接使用,一般作用程序调试1.__LINE__ :记录文件已经编译的次数原创 2016-12-11 15:44:19 · 469 阅读 · 0 评论 -
判断一个字符串是否为另外一个字符串旋转之后的字符串
判断一个字符串是否为另外一个字符串旋转之后的字符串。例如:给定s1 = AABCD和s2 = BCDAA,返回1,给定s1=abcd和s2=ACBD,返回0.#include #include #include void shiftstep(char *msg, int step){ assert(msg); int len = strlen(msg);原创 2016-12-11 15:24:59 · 279 阅读 · 0 评论 -
写一个宏可以将一个数字的奇数位和偶数位交换
编写一个宏,将数字的奇数位和偶数位交换给一个数分别“与”上0x55555555和0xAAAAAAAA,可以得到该数的奇数位和偶数位#include #define EXCHANGE(x) ((((x)&0x55555555)>1))int main(){ int a = 0; printf("请输入一个数:"); scanf("%d", &a); int x =原创 2016-12-11 14:12:22 · 360 阅读 · 0 评论