随笔分类 -  C

语言
C-字符串常量
摘要:相同的字符串常量是共享的,而且是不可写的。 1 #include 2 using namespace std; 3 4 char *string1, *string2; 5 6 int main() { 7 string1 = "abcd"; string2 = "abcd"; 8 ... 阅读全文

posted @ 2014-08-18 21:15 醉清风JM 阅读(168) 评论(0) 推荐(0)

C-union的使用
摘要:union有两个作用:1,节约空间,如果一个struct存在两个互斥的变量,则可以把这个struct变成union2,将同一个内存作为多种解释代码: 1 #include 2 using namespace std; 3 4 //作用1,如果只是存a,20000000 个s_tag节约20M空间... 阅读全文

posted @ 2014-08-18 21:01 醉清风JM 阅读(240) 评论(0) 推荐(0)

C- struct的使用
摘要:数组是二等公民,不能进行整体赋值,或者参数传递,或者作为返回值。But!如果封装在struct内部,就完全不一样了 1 #include 2 using namespace std; 3 4 struct s_tag { int a[100]; }; 5 s_tag fa, sa, ua; 6 ... 阅读全文

posted @ 2014-08-18 07:41 醉清风JM 阅读(196) 评论(0) 推荐(0)

C- printf的使用
摘要:ASC C之后引入的一个特性是,相邻的字符可以被自动连接 1 /* printf.cc 2 * 2014/09/02 update 3 */ 4 #include 5 using namespace std; 6 7 int main() { 8 printf("abcd" 9 ... 阅读全文

posted @ 2014-08-16 09:18 醉清风JM 阅读(265) 评论(0) 推荐(0)

指针赋值的问题【转】
摘要:转自:http://blog.csdn.net/snowq/archive/2008/01/17/2050129.aspx最近写了一个小程序,遇到一点小问题,是关于指向字符串的指针的。由此一发不可收拾,好奇心驱使我决定研究一下指针的初始化和赋值规则。略有所得之后,执笔记下,以备后用。1、指针的初始化... 阅读全文

posted @ 2014-07-24 10:06 醉清风JM 阅读(309) 评论(0) 推荐(0)

C-指针和数组的区别
摘要:指针的操作: 允许:1)同类型指针的赋值 2)与整形的加减运算 3)指向同一数组内指针的减运算和比较 4)赋 ‘0’ 或与 ‘0’ 比较 不允许:1)两指针的相加,相乘除,位移或mask 2)与float,double类型相加 3)不通过类型转换,直接赋予除... 阅读全文

posted @ 2014-06-26 13:21 醉清风JM 阅读(318) 评论(0) 推荐(0)

C-指针与引用的区别
摘要:1. 指针是一个变量,保存一个地址,指向内存中的一个单元。而引用是一个别名。int a = 1; int* p = &a;int b = 1; int& r = b;2. 指针可以为空,但是引用必须被初始化,也因此不需要判断是否为空3. 指针的指向可以被改变,但是引用一旦初始化就不会再改变了4. s... 阅读全文

posted @ 2014-06-19 14:23 醉清风JM 阅读(181) 评论(0) 推荐(0)

面试题目-以字符输出十进制数
摘要:1: $ cat printd.C 2: #include 3: // First version 4: void printd(long d) { 5: 6: if (d < 0) { 7: putchar ('-'); 8: ... 阅读全文

posted @ 2013-04-16 18:31 醉清风JM 阅读(265) 评论(0) 推荐(0)

【C】typedef与define的区别
摘要:转:http://www.rupeng.com/forum/thread-244-1-1.html一、typedef的用法 typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,实例像:typedef int INT;typedef int ARRAY... 阅读全文

posted @ 2013-04-15 11:19 醉清风JM 阅读(227) 评论(0) 推荐(0)

C++-Explanation of ++val++ and ++*p++ in C
摘要:今天本来想搜一下*p++的意思,结果发现一个比较有意思的帖子。http://stackoverflow.com/questions/3660048/explanation-of-val-and-p-in-cASK:int val = 5;printf("%d",++val++); //gives c... 阅读全文

posted @ 2013-04-11 15:51 醉清风JM 阅读(311) 评论(0) 推荐(0)

C-位移操作
摘要:位操作练习 阅读全文

posted @ 2013-04-10 09:35 醉清风JM 阅读(396) 评论(0) 推荐(0)

【C】关于内存地址
摘要:地址存放与内存对齐:关于栈的内存地址到底是怎么存放的呢,cywin下写了段代码测试: 1: $ cat cinputoutputadd.C 2: #include "stdio.h" 3: 4: int main (){ 5: int a = 0; 6: c... 阅读全文

posted @ 2013-04-09 17:48 醉清风JM 阅读(375) 评论(0) 推荐(0)

C-操作符优先级分类记忆
摘要:曾经以为不需要记住C语言的操作符的优先级,但是现在发现加括号实在是太烦了,还是试着记吧。举例:常见错误1: if (flags & FLAG != 0) ...解析:!= 比&有更高优先级,相当于if (flags & (FLAG != 0))常见错误2:r = h与.。结合型为左到右第二级,一元操... 阅读全文

posted @ 2013-04-08 13:14 醉清风JM 阅读(237) 评论(0) 推荐(0)

C-字节对齐
摘要:文章最后本人做了一幅图,一看就明白了,这个问题网上讲的不少,但是都没有把问题说透。 一、概念 对齐跟数据在内存中的位置有关。如果一个变量的内存地址正好位于它长度的整数倍,他就被称做自然对齐。比如在32位cpu下,假设一个整型变量的地址为0x00000004,那它就是自然对齐的。 ... 阅读全文

posted @ 2013-03-22 21:57 醉清风JM 阅读(157) 评论(0) 推荐(0)

C-声明和定义
摘要:定义:只有一个,确定对象的类型,并分配内存。对于数组需要用常量指定除最左边一维之外的维数,。声明:可以有多个,描述对象的类型。对于数组可以不指定维数 阅读全文

posted @ 2013-03-20 22:34 醉清风JM 阅读(150) 评论(0) 推荐(0)

C-typedef和define的区别
摘要:在C语言中,typedef和define都可以设置变量的别名,但是typedef被视为一种彻底的封装,为类型引入一个别名,声明之后不能再往里面加入别的东西,宏则不然。1. define可以进行扩展但是typedef不行(note1)#define peach intunsigned peach; /... 阅读全文

posted @ 2013-03-20 22:21 醉清风JM 阅读(163) 评论(0) 推荐(0)

【C】malloc()与 alloc()区别
摘要:malloc()与 alloc()C语言跟内存分配方式(1) 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。(2) 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈... 阅读全文

posted @ 2013-03-07 23:23 醉清风JM 阅读(282) 评论(0) 推荐(0)

【C】C的书籍列表
摘要:网上找的,号称比较经典的C语言书籍:第一阶段:《The C Programming Language》,《C Reference Manual》,>,《C Primer》《Expert C Programming》第二阶段:《Expert C Programming --- Deep C Secre... 阅读全文

posted @ 2013-03-01 01:32 醉清风JM 阅读(214) 评论(0) 推荐(0)

【C】external/internal/static/register variable and function
摘要:external(global)external variable is defined outside of functions. They are available to all the below functions and all of reference points to the sa... 阅读全文

posted @ 2013-03-01 01:19 醉清风JM 阅读(282) 评论(0) 推荐(0)

【C++】Sizeof与Strlen
摘要:1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。该类型保证能容纳实现所建立的最大对象的字节大小。 2.sizeof是算符,strlen是函数。 3.sizeof可以用类型做参数,strlen只能用char*做参数,且必须是以''\0''结尾的... 阅读全文

posted @ 2013-02-05 22:07 醉清风JM 阅读(316) 评论(0) 推荐(0)

导航