
C语言
文章平均质量分 76
zero_lee
这个作者很懒,什么都没留下…
展开
-
关于<C专家编程>的笔记
重新阅读, 以下是关于的笔记,觉得要重点掌握的。 1. 关于const的变量的赋值 foo(const char** p) { } main(int argc, char** argv) { foo(argv); // *** } 上面代码段中//***会产生编译错误。原因在于 const char** p = argv; 赋值是不被允许的。原创 2013-11-14 18:30:11 · 935 阅读 · 0 评论 -
<C陷阱与缺陷>中的printf
中关于printf 1. 格式符 %g, %f, %e这3个格式项用于打印浮点值。%g格式项用于打印那些不需要按列对齐的浮点数特别有用。它在打印出对应的数值时,会去掉该数值尾缀的零,保留6位有效数字。 printf("PI = %g\n", 4 * atan(1.0)); PI = 3.14159 (共6位有效数字,不包括小数点和前缀0) printf("%g %g原创 2013-11-18 14:30:51 · 1221 阅读 · 0 评论 -
[Happy DSA] 删除单链表中任意一个节点的方法
在阅读c-algorithms代码时,又看到如下的代码(删除单链表中任意一个节点) /* A singly-linked list */ struct _SListEntry { SListValue data; SListEntry *next; }; int slist_remove_data(SListEntry **list, SListEqual原创 2013-11-11 17:37:24 · 1223 阅读 · 0 评论 -
[Happy DSA] 如何对单链表进行快速排序
通常快速排序算法都是施行于数组,但它也可以作用于单链表。 原理跟数组快速排序是一样的,先partition,然后再递归的解决子单链表的快速排序。 以下是从c-algorithms代码中摘下来的代码段: static SListEntry *slist_sort_internal(SListEntry **list,原创 2013-11-12 10:54:39 · 1145 阅读 · 0 评论