随笔分类 -  c

该文被密码保护。
posted @ 2017-04-13 13:41 Crystal_Guang 阅读(5) 评论(0) 推荐(0)
摘要:按行读写文件需要用到fputs和fgets函数,feof函数可以检测是否到文件末尾,如果是,返回一个非零值,如果没有达到末尾,返回零值。 阅读全文
posted @ 2017-04-12 13:04 Crystal_Guang 阅读(234) 评论(0) 推荐(0)
摘要:对学习C语言而言,文件操作属于横向学习,而之前的指针属于纵向学习。所谓横向学习,就是快速掌握API,了解使用就行,纵向学习则不同,纵向学习需要深入地理解原理。但是在linux系统编程的学习中,文件操作属于纵向学习,因为在Linux设计哲学中是一切皆文件的思想。 第一个API函数,fopen 第二个A 阅读全文
posted @ 2017-04-10 10:42 Crystal_Guang 阅读(397) 评论(0) 推荐(0)
摘要:直接用“=”操作符,是浅拷贝,要实现深拷贝,更改代码如下: 这样深拷贝之后,就需要释放两次内存。在以后的业务逻辑中,须根据需要选择使用深拷贝还是浅拷贝,但我们要知道,编译的“=”(赋值)操作符是浅拷贝。 阅读全文
posted @ 2017-04-09 12:05 Crystal_Guang 阅读(1811) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2017-04-08 17:55 Crystal_Guang 阅读(20) 评论(1) 推荐(0)
摘要:为什么第一个调用有警告,第二个没有? 要解释这个问题,真是破费心机。 ANSI C 6.3.16.1节对于简单赋值这样描述: 两个操作数都是指向有限定符或者无限定符的相容类型的指针,左边指针所指向的类型必须具有右边指针所指向类型的全部限定符。 (在顶层const时不再适用!) 函数调用时,实参传递给 阅读全文
posted @ 2017-04-07 21:47 Crystal_Guang 阅读(535) 评论(0) 推荐(0)
摘要:模拟开辟内存二级结构体指针: 阅读全文
posted @ 2017-04-06 15:13 Crystal_Guang 阅读(376) 评论(0) 推荐(0)
摘要:数组名的技术盲点: 1.数组首元素的地址和数组地址时两个不同的概念,虽然它们的值相同,但是执行运算例如加1操作时,移动的步长不一样 2.数组名代表数组首元素的地址,它是一个常量: 变量的本质是内存空间的别名,一定义数组,就分配内存,内存就固定了,所以数组名起名以后就不能更改了。那么为什么指针类型的可 阅读全文
posted @ 2017-04-05 15:56 Crystal_Guang 阅读(485) 评论(0) 推荐(0)
摘要:红色部分的后置++和--位置是有讲究的,可不能随意变哦。 阅读全文
posted @ 2017-03-28 19:24 Crystal_Guang 阅读(197) 评论(0) 推荐(0)
摘要:C语言,同样使用if else while 这样的语法,但不同的人,就是有不同的实现方式,甚至是技巧。 eg: 上面红线处的if语句,是一个值得借鉴的表达式,这也是上一篇博客所说到的,这需要平时的积累,就算都是基本语法,但不同的人能用出不一样的花样。 这个代码还有一点不足,就是如果我把数组改成mat 阅读全文
posted @ 2017-03-26 16:41 Crystal_Guang 阅读(257) 评论(0) 推荐(0)
摘要:1 #include 2 #include 3 /*基本水平*/ 4 void mycopy1(char *des,char * sou) 5 { 6 unsigned int i; 7 for ( i = 0; i < strlen(sou); i++) 8 { 9 des[i] = sou[i]; 10 } 11 d... 阅读全文
posted @ 2017-03-26 14:52 Crystal_Guang 阅读(222) 评论(0) 推荐(0)
摘要:指针,C语言永恒的话题。关于指针,在《c和指针》上是这样形容的,指针就是地址的另外一个叫法。所以我们要明白,指针和指针变量的区别,指针就是地址,指针变量是存放指针的变量,即指针变量存放的是地址,我们通过间接访问符可以得到该地址的内容。但是,在一般情况下,我们都把指针变量说成指针这样的简称。例如:vo 阅读全文
posted @ 2017-03-25 19:57 Crystal_Guang 阅读(1700) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2017-03-20 12:49 Crystal_Guang 阅读(17) 评论(0) 推荐(0)
摘要:今天man了一下open,发现open函数的原型居然看着是重载,C语言不是不支持重载么,经过一番搜寻之后,总结如下: 可变长参数函数 C语言是不支持函数重载机制的,但是支持变长参数函数,当然C++也是支持的。 Linux中open系统调用 查看Linux中open的Manual Page,看到如下说 阅读全文
posted @ 2017-02-15 19:41 Crystal_Guang 阅读(2386) 评论(0) 推荐(0)