C
boker
这个作者很懒,什么都没留下…
展开
-
main(int argc, char **argv)参数argc,argv说明和指向指针的指针变量
Main函数参数argc,argv说明 argc 是外部命令参数的个数,argv[] 存放各参数的内容 C/C++语言中的main函数,经常带有参数argc,argv,如下: int main(int argc, char** argv) int main(int argc, char* argv[]) 这两个参数的作用: argc 是指命令行输入参数的个数(以空白符转载 2014-01-02 00:27:51 · 1414 阅读 · 0 评论 -
Linux终端程序用c语言实现改变输出的字的颜色
格式: echo "\033[字背景颜色;字体颜色m字符串\033[0m" 例如: echo "\033[41;36m something here \033[0m" 其中41的位置代表底色, 36的位置是代表字的颜色 那些ascii code 是对颜色调用的始末. \033[ ; m …… \033[0m 字背景颜色范围:40----49 40:黑转载 2014-01-12 23:23:19 · 6588 阅读 · 0 评论 -
预处理器标识#error的目的是什么
编译程序时,只要遇到 #error 就会跳出一个编译错误,既然是编译错误,要它干嘛呢?其目的就是保证程序是按照你所设想的那样进行编译的。 下面举个例子: 程序中往往有很多的预处理指令 #ifdef XXX ... #else #endif 当程序比较大时,往往有些宏定义是在外部指定的(如makefile),或是在系统头文件中指定的,当你不太确定当前是否定义了 XXX 时,转载 2014-03-01 12:28:03 · 23662 阅读 · 0 评论 -
linux的system () 函数
system(执行shell 命令) 相关函数 fork,execve,waitpid,popen 表头文件 #i nclude 定义函数 int system(const char * string); 函数说明 system()会调用fork()产生子进程,由子进程来调用/bin/sh-c string来执行参数s转载 2014-03-01 22:36:06 · 652 阅读 · 0 评论 -
写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个。另外,当你写下面的代码时会发生什么事?least = MIN(*p++, b)
#define MIN(A,B) ((A) MIN(*p++, b)会产生宏的副作用 剖析: 这个面试题主要考查面试者对宏定义的使用,宏定义可以实现类似于函数的功能,但是它终归不是函数,而宏定义中括弧中的“参数”也不是真的参数,在宏展开的时候对“参数”进行的是一对一的替换。程序员对宏定义的使用要非常小心,特别要注意两个问题: (1) 谨慎地将宏定义中的“参数”和整个宏用用括弧转载 2014-03-01 12:25:21 · 12891 阅读 · 1 评论 -
c语言开始执行函数
一般地讲:c程序在main()函数中开始,在main()函数中结束. 从语言的角度来说,程序执行时由_mainCRTStartup开始,_mainCRTStartup初始化C运行时库并调用main,main退出到_mainCRTStartup后调用exit来终止程序。 从操作系统的调度来说,由一个启动函数调用_mainCRTStartup,比如在Windows中是BaseProcessStar转载 2014-03-02 12:00:19 · 1160 阅读 · 0 评论 -
strcpy和memcpy的区别
strcpy和memcpy都是标准C库函数,它们有下面的特点。 strcpy提供了字符串的复制。即strcpy只用于字符串复制,并且它不仅复制字符串内容之外,还会复制字符串的结束符。 已知strcpy函数的原型是:char* strcpy(char* dest, const char* src); memcpy提供了一般内存的复制。即memcpy对于需要复制的内容没有限制,因此用途更广。转载 2014-03-02 00:50:44 · 630 阅读 · 0 评论 -
浅谈C中的malloc和free
在C语言的学习中,对内存管理这部分的知识掌握尤其重要!之前对C中的malloc()和free()两个函数的了解甚少,只知道大概该怎么用——就是malloc然后free就一切OK了。当然现在对这两个函数的体会也不见得多,不过对于本文章第三部分的内容倒是有了转折性的认识,所以 写下这篇文章作为一个对知识的总结。这篇文章之所以命名中有个“浅谈”的字眼,也就是这个意思了!希望对大家有一点帮助!转载 2014-03-02 01:28:38 · 698 阅读 · 0 评论 -
malloc()与calloc()区别
C语言跟内存分配方式 (1) 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。 (2) 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。 (3)从堆上分配,亦称动态内存分配。转载 2014-03-02 01:51:29 · 995 阅读 · 0 评论