随笔分类 - 01-C语言学习笔记
摘要:QT是一个非常强大的图形用户界面应用程序开发框架,但是它现在不是很主流。虽然这样但是它的应用领域还是非常的广,特别是应用在嵌入式领域,非常多的公司喜欢用它来做界面。所以还是有比较多的小伙伴们想要学习这门语言,但是目前网络上的教程比较少,这里为大家介绍一下QT5.10.0安装的详细教程,希望对初学者有
阅读全文
摘要:涉及到的知识点有: 项目实战:做一个电子词典,快易通电子词典。 方案零:固定字典词条数目。(出现问题:多了的词条数解决不了,少了的词条数浪费内存。) 方案一:读2次文件,第一次读文件得到文件的词条数(每个循环读两行数据),第二次打开文件后根据文件实际的词条数来分配堆内存。 方案二:边读边随时增加st
阅读全文
摘要:涉及到的知识点有:一、c++基础知识01二、c++基础知识02 1、c语言中,如何在调用main函数之前就执行一段代码?三、类与结构的区别01四、类与结构的区别02五、类的继承概念 1、一个mfc程序的例子的核心代码: 2、破解MFC中按钮的例子。 3、MFC版的小小IDE: 4、MFC版的小小浏览
阅读全文
摘要:由于微软在VS2013中不建议再使用c的传统库函数scanf,strcpy,sprintf等,所以直接使用这些库函数会提示C4996错误,在源文件中添加以下指令就可以避免这个错误提示:法一:#define _CRT_SECURE_NO_WARNINGS把这个宏定义一定要放到.c文件的第一行。法二:在
阅读全文
摘要:如果一个程序只调用fopen,而不调用fclose。会导致两个结果: (1)一个程序同时可以打开的文件数量是有限的,如果超过系统限制,那么打开文件会失败。(2)一个fopen会占用一些内存,多个就会对内存消耗很大。所以记得fopen使用完文件后要及时的fclose。而且使用fclose后,能把缓冲区
阅读全文
摘要:涉及到的知识点有:六、stat函数七、fread 和 fwrite函数八、fopen的a模式说明九、fopen的b模式说明十、sftp传输文件时的说明十一、fopen的其他模式简要说明十二、实现二进制文件的拷贝十三、fseek函数十四、ftell函数十五、fflush函数十六、remove函数 和
阅读全文
摘要:参考文档来自:https://www.cnblogs.com/haore147/p/3648395.html 我们通过fopen返回一个文件指针(指向FILE结构体的指针)来进行文件操作。 在vs2013下的代码如下: 代码中-->选中FILE后-->右键选择-->转到定义(G),显示的代码如下:
阅读全文
摘要:本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wubin1124/archive/2009/12/09/4971359.aspx 一、linux常用头文件如下: 二、C常用头文件如下: 三、标准C++常用头文件如下: 程序在使用一个函数之前,应该首先声明该函数。为了
阅读全文
摘要:涉及到的知识点有:一、fopen函数。二、fclose函数。三、getc 和 putc 函数1、通过getc和putc读写指定的文件、2、拷贝文件的代码。(一个一个字节的拷贝)、3、改进版的代码:通过命令行参数,实现指定文件名的拷贝、4、文件的加密解密操作。(用getc和putc函数实现)。四、fg
阅读全文
摘要:在c语言中,数组 a[i++] 和数组 a[++i] 有区别吗? 首先我们先看下面的内容: b = a++; //先计算表达式的值,即先把a赋值给了b;然后a再自加1。b = ++a; //先a自加1后;然后把a自加后得到的赋值给b。 小结:谁在前面先计算谁!!! 有区别,举例说明: 在c语言中,数
阅读全文
摘要:struct A{ char array[100]; //array不知道在哪里呢?只是告诉c语言编译器有这么一种类型结构。是一种语法形式,不要误解。 int a;}; struct B{ char *p = malloc(100); //所以不能这样写! nt a;}; int main(){ s
阅读全文
摘要:涉及到的知识点有:一、结构体1、定义结构体struct和初始化、2、访问结构体中的成员、3、结构体的内存对齐模式、4、结构体中元素的位字段、5、结构体中的数组、6、结构体的嵌套、7、结构体的赋值、8、通过指针访问结构体成员(即指向结构体的指针)、9、通过指针访问结构体数组(即指向结构体数组的指针)、
阅读全文
摘要:对于c语言来讲,内存管理是一个很重要的内容,它与指针是息息相关的,因为内存的管理都是通过指针来实现的。 如果一个变量,它处在所有的代码块之外,那么它的生命周期就是和整个程序是一起的,程序启动的时候它就出现了,程序退出时,它才终止。如果一个变量,它处在代码块之内,那么这个代码块执行的时候它才出现,代码
阅读全文
摘要:涉及到的知识点有:一、内存管理、作用域、自动变量auto、寄存器变量register、代码块作用域内的静态变量、代码块作用域外的静态变量。 二、内存布局、代码区 code、静态区 static、栈区 stack、堆区 heap。 三、堆的分配和释放、c语言几个使用堆内存的库函数:malloc函数、f
阅读全文
摘要:Code Area(代码区):程序代码指令、常量字符串,只可读。 Static Area(静态区):存放全局变量/常量、静态变量/常量。 该区域的大小在程序一加载进内存的时候就已固定,但是静态变量的值是可以改的。 Heap(堆):由程序员控制,使用malloc/free来操作。 Stack(栈):预
阅读全文
摘要:对于初学c语言编程的我们来说,学会如何使用gcc编译器工具,对理解c语言的执行过程,加深对c语言的理解很重要!!! 1、预编译 --> 2、编译 --> 3、汇编 --> 4、链接 0、编写c代码,并输入以下如图代码,生成c文件hello.c。 1、预编译(Preprocessing)命令: 会对各
阅读全文
摘要:什么是core dump?(down = 当) core的意思是:内存,dump的意思是:扔出来、堆出来。 开发和使用linux程序时,有时程序莫名其妙的down掉了,却没有任何的提示(有时候会提示core dumped)。 这时候可以查看一下有没有形如:core 的文件生成,这个文件便是操作系统把
阅读全文
摘要:指针变量之间赋值是需要兼容的。 例如:int *a = int的地址char *b= char的地址 void类型的指针可以做任意类型地址的赋值操作。例如:void *p = int地址可以p = char地址也还可以 但void类型的指针不能做指针运算。例如:p++; //会出现问题 指针与数组的
阅读全文
摘要:不废话,请看代码演示如下: 注意使用的操作系统的位数,不同位数的操作系统,结果不一样! 我是用的是64位的操作系统! linux下示例代码如下: linux下示例代码截图如下:
阅读全文
摘要:%d 有符号10进制整数(%ld 长整型,%hd短整型 )%hu 无符号短整形(%u无符号整形,%lu无符号长整形)%i 有符号10进制整数 (%i 和%d 没有区别,%i 是老式写法,都是整型格式) %o 无符号8进制整数 %u 无符号10进制整数 %x 无符号的16进制数字,并以小写abcdef
阅读全文