![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C
文章平均质量分 59
ICode_xyz
这个作者很懒,什么都没留下…
展开
-
找到的 base64编解码实现
好久没写了!// Base64Encode.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #include #include #define BASE64_PAD64 '='char base64_alphabet[] = {'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I','J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R','S', 'T', 'U', 'V',原创 2010-12-16 15:51:00 · 892 阅读 · 0 评论 -
关于宏定义 # ##
临睡时看了个帖子,其中一哥们的回复很不错,在此mark下,学习了! 写道这里时,突然想起今天是光棍节,也顺便纪念下。#与##在宏定义中的--宏展开#include #define f(a,b) a##b#define g(a) #a#define h(a) g(a)int main(){ printf("%s/n", h(f(1,2))); // 12 printf("%s/n", g(f(1,2))); // f(1,2) return 0;}宏展开时:如果宏定义以#开头,不展开参数,原创 2010-11-11 23:48:00 · 512 阅读 · 0 评论 -
不积跬步,无以至千里
今天以这个标题来开始我的第一篇csdn博客,以此来记录自己学习到的点点滴滴。并鞭策自己不断的学习下去,不能再惶惶不可终日的混下去了,提高自己,改变生活! 刚才看了个面试题,关于指针的,mark下,为自己解惑! int arr[]={6,7,8,9,10}; int *ptr=arr; *(ptr++)+=123; printf("after *(ptr++): *ptr=%d/n",*ptr); printf("line11%d,%d/n",*ptr,*(++ptr));原创 2010-11-10 16:09:00 · 619 阅读 · 0 评论 -
一些关于C语言的总结
看到一哥们写的笔记,感觉不错就拿过来了。本想加到网摘里边,可捣腾了半天就没有发现加网摘的链接,最后还是写到自己的博客中吧!总结1:char *ch ="12345"; char ch[] = "12345"; char ch[] = {"12345"}; (puts /printf(%s))char ch[] = {‘1’,‘2’,‘3’,‘4’,‘5’,'/0'};(必须有单引号)scanf("%[^'/n']",a); gets(a);(空格也会录入,直到回车)总结2:sscanf()函数和sp原创 2010-11-14 23:10:00 · 532 阅读 · 1 评论 -
随机数
把以前在livespace上总结的关于随机数的内容放在这里。还得再记住个账号,麻烦!生成区间[a,b]之间的随机浮点数。 double randDouble(double a,double b) //这个是产生随机数函数,由于库函数功能有限,所以要自己封装一下 { return (rand()%(int)((b-a)*MAX_RANDOM))/(double)MAX_RANDOM+a; } 生成区间[m,n]之间的随机数。原创 2010-11-18 13:13:00 · 395 阅读 · 0 评论 -
offsetof
刚才在论坛上又看到有人提出关于内存对齐的问题,又做了一番调查,从中学到一个宏定义:offsetof(),这个宏可以算出结构体中变量相对结构体首地址的偏移量。根据此,就可以知道内存对齐时,结构体中各个变量实际所占用的内存大小。 typedef struct _AAA{ char ch1; short int sValue; char ch2; int i; }AAA;原创 2010-11-24 16:13:00 · 440 阅读 · 0 评论 -
链表相关
Powered By Joewan.1.如何检查单向链表中是否有环?解决方案一:假如单向链表中有环,则尾部元素一定在环中(可以通过反证法证明)。形状如下:这样,我们只需按顺序遍历节点,用一个数组保存每一个节点地址。对于每一个节点做这样的操作,判断该节点地址是否已经存在数组中,如果已经存在则链表中存在环。如果链表中不存在环,该地址只可能指向新的节点或者为空。假设n个节点,解决方案一在最坏情况下的时间复杂度为:0 + 1 + 2 + 3 + …… (n - 3) + 1 = O(n2)。解决方案二:用两个指针遍原创 2011-03-09 23:02:00 · 495 阅读 · 0 评论 -
删除一个已知节点
<br />///////////////////////////////////////////////////////////////////////<br />// Delete a node in a list<br />// Input: pListHead - the head of list<br />// pToBeDeleted - the node to be deleted<br />////////////////////////////////////////////原创 2011-03-09 22:39:00 · 610 阅读 · 0 评论 -
使字符串比较更自然
<br /> 最近在看《c专家编程》,上边的一个小启发,在此做个笔记,学习一下。<br /><br /><br />strcmp()函数用于比较两个字符串,但有点小纠结的是当两个字符串相等时,返回0。于是就有这样的代码出现:<br />if(!strcmp(str,"volatile")) return QUALIFIER;<br />这多少有点令人费解,相等时再取非,才符合我们的逻辑。<br /> <br />使用宏定义:<br /> <br />#define STRCMP(a,R,b) (st原创 2011-02-23 17:31:00 · 470 阅读 · 0 评论