![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
文章平均质量分 56
Greens_Ren
这个作者很懒,什么都没留下…
展开
-
c语言中的read和write函数
读函数:readssize_t read(int fd, void *buf,size_t nbyte)read函数从fd中读取内容,成功后,read返回实际读取的字节数,如果返回值为0,表示读到文件的结束符。小于0表示出现了错误。如果错误为EINTR说明是由中断引起的,如果是ECONNREST表示网络连接出现了问题。 写函数:writessize_t write(int fd, co原创 2013-11-18 16:16:47 · 4709 阅读 · 0 评论 -
c语言中内存分配问题
C语言内存分配问题1、C中内存分为四个区栈:用来存放函数的形参和函数内的局部变量。由编译器分配空间,在函数执行完后由编译器自动释放。 堆:用来存放由动态分配函数(如malloc)分配的空间。是由程序员自己手动分配的,并且必须由程序员使用free释放。如果忘记用free释放,会导致所分配的空间一直占着不放,导致内存泄露。 全局局:用来存放全局变量和静态变量。存在于程序的整个运行期转载 2013-11-16 14:23:55 · 891 阅读 · 0 评论 -
C和ARM汇编混合编程
在应用程序设计中,如果所有任务均用汇编语言来完成,其工作量是可想而知的,而且不利于系统升级或应用软件移植。事实上,ARM体系结构支持C/C++与汇编语言的混合编程,在一个完整的系统中,除了CPU初始化部分用汇编语言完成以外,其主要的编程任务一般都用C/C++完成。 汇编语言与C/C++的混合编程通常有以下几个方式:在c/c++程序中嵌入汇编指令在汇编程序中访问c/c++定义的全局变量在原创 2013-11-18 16:18:18 · 1492 阅读 · 0 评论 -
负数的补码运算
在汇编代码中我们经常要将十进制数转换为二进制数,如果十进制为正数,这就比较简单了,但是如果是负数,就有点小复杂,下面就跟着我一起学习十进制负数是如何转换为二进制的。 这里我们约定二进制长度为8 例如:-33的二进制表示:0000 0011 -3的反码:11111100 -3的补码:1111 1101在计算机中通常用负数的补码来表示。 又-11的二进制原创 2013-11-18 16:18:08 · 3489 阅读 · 0 评论 -
C语言华为面试汇总
C语言面试题总汇原地址:http://blog.csdn.net/pfgmylove/article/details/32072364. static有什么用途?(请至少说明两种)1.限制变量的作用域2.设置变量的存储域7. 引用与指针有什么区别?1) 引用必须被初始化,指针不必。2) 引用初始化以后不能被改变,指针可以改变所指的对象。2) 不存在指向空原创 2013-11-16 14:18:47 · 2481 阅读 · 0 评论 -
c语言变量的作用域
C语言中变量的作用域原文地址http://blog.csdn.net/guoyunhe/article/details/483982C语言中所有变量都有自己的作用域,申明变量的类型不同,其作用域也不同。C语言中的变量,按照作用域的范围可分为两种, 即局部变量和全局变量。 一、局部变量局部变量也称为内部变量。局部变量是在函数内作定义说明的。其作用域仅限于函数内, 离开该函数后再使用这转载 2013-11-16 12:40:30 · 1219 阅读 · 0 评论 -
getopt()函数
每一天你都在使用大量的命令行程序,是不是感觉那些命令行参数用起来比较方便,他们都是使用getopt来实现的。在Linux下使用getopt写程序是一种比较cool的事情,下面来简单的介绍一下getopt的使用。=== getopt使用 ===在讨论参数处理之前,我们先明确两个概念:选项、选项参数gcc -g -o test test.c我们经常使用上面的命令来编译程转载 2013-12-23 10:58:06 · 671 阅读 · 0 评论 -
C语言中的操作符优先级和求值顺序
1.操作优先级:() [] -> . L-R! ~ ++ -- - (type) * & sizeof R-L* / % L-R+ - L-R>> = L-R== != L-R& L-R^ L-R| L-R&& L-R|| L-R?:转载 2013-12-01 12:09:10 · 1143 阅读 · 0 评论 -
C语言中的左值和右值
声明:本文转自http://blog.csdn.net/qikaibinglan/article/details/6203483 如果有侵犯他人版权,请通知我我会马上删除 左值就是在赋值中可以放在赋值操作符两边的值,比如: int a = 1; double b = 2.0 a = b; b = a; 这里a和b都是左值,一切变量都是左值,转载 2013-11-30 21:58:14 · 1599 阅读 · 0 评论 -
continue与break的区别
break和continue的区别如下: 1. break可用于switch语句,表示跳出整个switch块,而continue则不能用于switch语句 2. 它们都可用于循环语句的循环体,所谓的区别也应该是它们对循环次数的影响不同。break用于立即退出当前循环,而continue仅跳过当次循环(本次循环体内不执行continue语句后的其它语句,但下次循环还会执行)在原创 2013-11-27 15:58:09 · 631 阅读 · 0 评论 -
C语言中控制printf的打印颜色实例及vt100的控制符文档
转自:http://blog.csdn.net/evimacsl/archive/2010/01/18/5206836.aspx 为了给printf着色方便, 我们可以定义一些宏:view plain copy to clipboard print ?#define NONE "/033[m" #define RED转载 2013-11-26 20:10:33 · 1058 阅读 · 0 评论 -
memset的使用
1。void *memset(void *s,int c,size_t n)总的作用:将已开辟内存空间 s 的首 n 个字节的值设为值 c。2。例子#includevoid main(){char *s="Golden Global View";clrscr();memset(s,'G',6);printf("%s",s);getchar()转载 2013-11-26 19:25:45 · 704 阅读 · 0 评论 -
linux中argc、argv参数介绍
int main(argc, argv[])是linux与unix下的标准用法。int main()只是linux与unix的默许用法。下面通过一个例子edit.c来具体介绍argc和argv[]参数。//edit.c 编译程序:gcc -g edit.c -o edit运行程序:./edit显示结果:./edit运行程序:./edit file显示结果:./edit, fil原创 2013-11-18 16:16:23 · 1631 阅读 · 0 评论 -
c语言中的exit和return的区别
exit是在头文件stdlib.h中,所以使用exit时要加上这个头文件。return在stdio.h这个头文件中,使用时也要加上这个头文件。————————————————————————————————————————return是语言级别的,它表示调用堆栈的返回。exit是系统级别的,它表示一个进程的结束。————————————————————————————————retur原创 2013-11-18 16:16:25 · 854 阅读 · 0 评论 -
strlen与sizeof的区别与联系
一、sizeof sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。 它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。 由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof来返回类型以及静态分配的对象、结构或数组所占的转载 2013-11-24 22:21:53 · 546 阅读 · 0 评论