- 博客(93)
- 资源 (12)
- 收藏
- 关注
原创 c++ primer plus 看后总结(三) c++数据处理
OOP(面向对象编程)的本质是设计并扩展自己的数据类型 变量命名规则a)名称中只能使用字母字符、数字、下划线(_)b)名称第一个字符不能是数字c)字母区分大小写d)C++关键字不得用作名称e)以__或_X(X是任意大写字母)开头的名称被保留给实现使用,_开头的名称保留给实现,用作全局标识符。f)使用像_time_stop或_Donut
2017-02-27 13:16:21 388
原创 c++ primer plus 看后总结(二) c++一些词汇和代码的解释
1.对大小写敏感2.预处理编译指令#include3.标准写法 int main()4.注释://内容、/*内容*/5.头文件三种写法:.h、没有后缀、从C库得到的前缀加c,如cstring,没后缀6.c++特有名称空间using namaspace std; 则std内的所有成员都能在声明的作用域内被使用using std::cout; 则std的cout能在声明的作
2017-02-27 13:12:58 422
原创 c++ primer plus 看后总结(一) c++特点与介绍
C++具有过程性、面向对象、泛型编程 C++融合了三种不同的编程方式:①C语言代表的过程性语言 ②类代表的面向过程的语音 ③C++模版支持的泛型编程 C语言编程原理:①数据+算法 ②自顶
2017-02-27 13:06:45 1192 4
转载 C语言编译错误
C语言编译错误信息及说明1、 在函数 ‘transform’ 中:7: 错误:expected ‘;’ before ‘{’ token 解释:‘{’之前的某个语句缺少分号‘;’; 2、 在函数 ‘Insert_SqList’ 中:6: 错误:‘listsize’ 未声明 (在此函数内第一次使用) 解释:‘listsize’这个变量未声明;
2017-02-27 12:59:15 2089
转载 c++基础 一些基础词汇的解释
一、数据类型关键字基本数据类型void:声明函数无返回值或无参数,声明无类型指针,显示丢弃运算结果。 char:字符型类型数据,属于整型数据的一种。int:整型数据,表示范围通常为编译器指定的内存字节长。float:单精度浮点型数据,属于浮点数据的一种。double:双精度浮点型数据,属于浮点数据的一种。_Bool:布尔型_Complex:复数的基本类型_Ima
2017-02-26 23:07:53 1868
转载 服务器与客户端的实例整理
1. /******************* 2. 服务器 3. *******************/ 4. 5. #include 6. #include 7. #include 8. #include 9. 10. #include 11. #include 12. #include 13. 1
2017-02-26 23:00:34 353
原创 数据库的课堂整理
每个SQL语句以;结束 不区分大小写 常量:integer 整型 text字符串(char 32/char 16) bool真假 real实型(带小数点) 数据库操作:1、touch student.db 创建数据库2、sqlite3 student.db 进入数据库3、create table student(id integer primary key,name t
2017-02-26 22:59:30 215
原创 库函数的课堂整理
fopen:a+ 打开可读写 每次在文件末尾追加 文件不存在自动创建FILE *fp;fp = fopen(argv[1], "a+"); 返回值为文件指针 FILE在内部为结构体重命名 if(fp == NULL){ perror("open file error!"); exit(1);
2017-02-26 22:58:17 170
转载 Mysql单文件存储删除数据Bug文件容量不会减少
MySQL的Bug之一:InnoDB ibdata1 never shrinks after data is removed问题描述当innodb引擎使用单个文件进行存储的时候,当对数据库中数据进行删除的时候,文件的大小并不会发生变化,意味着文件将会越来越大并且即使删除也没办法 让其释放磁盘的空间。转载请注明出处:http://blog.csdn.NET
2017-02-25 14:49:39 234
原创 学习网络编程时需要了解的一些问题
1.七层网络模型与四层网络模型及每层的网络协议? 七层: 应用 四层:TFTP、FTP、NFS 表示 Telnet、SNMP、Gppher 会话_______________应用SMLP、DNS 传输_______________传输 TCP、UDP 网络_______________网际IP
2017-02-03 14:02:54 326
转载 SQLite的SQL语法
SQLite库可以解析大部分标准SQL语言。但它也省去了一些特性并且加入了一些自己的新特性。这篇文档就是试图描述那些SQLite支持/不支持的SQL语法的。查看关键字列表。如下语法表格中,纯文本用蓝色粗体显示。非终极符号为斜体红色。作为语法一部分的运算符用黑色Roman字体表示。这篇文档只是对SQLite实现的SQL语法的综述,有所忽略。想要得到更详细的信息,参考源代码和语法文件“
2017-01-18 22:58:59 319
转载 C语言——系统函数和库函数的区别
系统调用:是操作系统为用户态运行的进程和硬件设备(如CPU、磁盘、打印机等)进行交互提供的一组接口,即就是设置在应用程序和硬件设备之间的一个接口层。可以说是操作系统留给用户程序的一个接口。再来说一下,linux内核是单内核,结构紧凑,执行速度快,各个模块之间是直接调用的关系。放眼望整个linux系统,从上到下依次是用户进程->linux内核->硬件。其中系统调用接口是位于Linux内核中的,如果再
2017-01-18 22:56:40 459
转载 回调函数的作用
1.回调函数是一个很有用,也很重要的概念。当发生某种事件时,系统或其他函数将会自动调用你定义的一段函数。2.回调函数就相当于一个中断处理函数,由系统在符合你设定的条件时自动调用。为此,你需要做三件事:1,声明;2,定义;3,设置触发条件,就是在你的函数中把你的回调函数名称转化为地址作为一个参数,以便于系统调用。3.所谓回调函数就是按照一定的形式由你定义并编写实现内容,当发生某种事件
2017-01-18 22:54:06 363
原创 数据结构简要认识及链表的熟悉与掌握
数据结构 有模板来管理数据:增删改查存取遇到特定类型的数据时可以直接拿模板来管理数据 数据结构在嵌入式开发中的地位数据结构: 存取:链表 栈(先进后出) 队列(先进后出) 增删改查:树(二叉树查找树)平衡树 红黑树 哈夫曼树 排序:图(顺序调整)哈希表(存取)链表(动态数据管理) : 与数组(静态分配空间)相比 空间有效利
2017-01-17 20:05:13 340
转载 传入传出参数
1.传出参数:会从函数带出来的值(起到函数返回值的作用) 传入参数:原本有值,供函数使用2.函数返回值的注意事项 ①不能返回局部变量的地址②返回值-1,0,1这些,尽量用宏 ③主函数return 0的作用:正常退出(对操作系统负责,良好的编码习惯) exit是结束一个程序,reurn 是结束当前函数3.函数编码规范(自己整理
2016-12-12 14:23:22 1188
原创 指针 数组 优点缺点分析 及 调用函数的流程
1.指针的优势: ①可以直接访问硬件 访问速度快 ②提高空间的利用率 ③指针使用地更加灵活 空间分配 访问效率 指针保存的是地址(4字节) 直接 快 数组保存的是一片连续的空间 定位 加减 2.指针与数组的区别: ①空间分配
2016-12-12 14:07:40 5407
原创 数组的输入输出 main函数形参
1. 一维数组的输入输出 给char a[100]输入时 ① gets(a); ②scanf("%s",a); 注意:空格也会结束 ③while((ch = getchar()) != '\n') { a[i] = ch; i++; }
2016-12-12 11:50:47 542
原创 数组的一些介绍与注意点
一、数组名是指针常量,这个指针常量保存数组首元素的地址对数组名取地址是数组的地址二、[ ] == *( ) 三、对于整型一维数组a来说: a : 数组名,表示指针常量,保存数组首元素的地址 &a:代表数组的地址 对数组名取地址 == 数组的地址 *(&a) == a 对移位数组的地址取值 == 一
2016-12-05 23:52:39 265
原创 指针赋值的一些说明
一、指针变量保存的是地址不同地址 步长不一样二、为什么要对malloc强制类型转换? 因为:指针一定要相同(步长)类型赋值 (长给短 会丢失数据 短给长会取多个数据) 例:char *ptr(char *)malloc(sizeof(char)*100)三、浮点型指针不能和其他类型指针赋值四、警告:从不兼容的指针类型赋值 说明不同类型的指针不能赋值
2016-12-05 23:46:07 568
转载 linux下c语言指针部分的一个总结
1、指针的定义与初始化如何理解指针? 首先要在回答指针是什么时一定要说指针是变量,这样的话,指针就有了变量的特性。 (1) 系统为指针分配内存空间; (2) 指针有自己的地址; (3)指针能够存值,但这个值比较特殊–地址。 指针的字节长度: 任何类型指针的长度都是4个字节(32)系统,指针变量是一个地址,在操作系统中地址的长度是固定的。2、* 与&运算符详解(用于取
2016-12-05 23:32:54 282
转载 回调函数
1.回调函数是一个很有用,也很重要的概念。当发生某种事件时,系统或其他函数将会自动调用你定义的一段函数。2.回调函数就相当于一个中断处理函数,由系统在符合你设定的条件时自动调用。为此,你需要做三件事:1,声明;2,定义;3,设置触发条件,就是在你的函数中把你的回调函数名称转化为地址作为一个参数,以便于系统调用。3.所谓回调函数就是按照一定的形式由你定义并编写实现内容,当发生某种事件
2016-12-05 23:31:34 207
转载 malloc实现原理
malloc()是C语言中动态存储管理 的一组标准库函数之一。其作用是在内存的动态存储区中分配一个长度为size的连续空间。其参数是一个无符号整形数,返回值 是一个指向所分配的连续存储域的起始地址的指针。 动态内存分配 就 是指在程序执行的过程中动态地分配或者回收存储空间的分配内存的方法。动态内存分配不像数组等静态内存分配方法那样需要预先分配存储空间,而是由系统根据 程序的需要即时分配,且
2016-12-02 23:10:48 250
原创 什么是野指针如何避免野指针
野指针:指向不确定地址的指针变量。(即没有初始化) (随机指向一块内存的指针)使用野指针易因内存泄露出现段错误。因为它随机指向的地址可能被分配了内存,不一定每次都产生段错误.而造成内存泄露的原因有两个:1.访问了没有权限的内存(平时我们正确使用指针的时候,系统应经将相应的内存分配给用户,但是如果指向没有分配的内存,系统会判定我们没有权限)2.访问了已经释放了
2016-12-02 23:07:42 869
转载 全局变量 局部变量
一、变量的分类 变量可以分为:全局变量、静态全局变量、静态局部变量和局部变量。按存储区域分,全局变量、静态全局变量和静态局部变量都存放在内存的静态存储区域,局部变量存放在内存的栈区。按作用域分,全局变量在整个工程文件内都有效;静态全局变量只在定义它的文件内有效;静态局部变量只在定义它的函数内有效,只是程序仅分配一次内存,函数返回后,该变量不会消失;局部变量在定义它的函数内有效,但是函数
2016-12-02 22:56:58 281
转载 倒置单词的小程序
编写一个C函数,将“i am from shanghai"倒置为“shanghai from am i",及将句子中的单词位置倒置,而不改变单词内部结构。#include #include #define MAX_SIZE 1024void reverse_string(char *s1, int len){ int i; char
2016-12-02 22:54:17 259
转载 如何用scanf输出一个句子
首先明确 scanf的结束标志是空格和回车键,而gets的结束标志为回车键,输入字符串时,一般采用gets因此有下面两种方法可以在使用scanf时完整输入字符串1)利用strcat()函数来实现带空格字符串的输入,可以用字符串追加函数strcat()来连接每个单词。 Strcat()一般格式:char*strcat(char*dest,const char*
2016-12-02 22:50:16 937
转载 printf函数详解
首先直接描述printf函数中的“格式描述串”,它是由一系列的“格式转换说明符号”组成,格式转换说明符号的描述形式如下:%[+][-] 0 m[n][输出精度](1)形式字母:制定输出格式,如表d:十进制整型数i:十进制整型数x:十六进制整型数o:八进制整形数u:无符号十进制整形数c:单个字符s:字符串e:指数形式的浮
2016-11-28 09:14:31 243
原创 sizeof 与 strenlen的区别
1.sizeof是运算符,strlen是string.h里面的函数。2.sizeof计算时连带'\0',strlen计算时检索到'\0'停止。3.sizeof可以用类型做参数,而strlen只可以用char *做参数。4.数组做sizeof的参数不退化,传递给strlen就退化为指针了。
2016-11-28 09:13:22 3520
转载 局部变量与全局变量的区别
一、变量的分类 变量可以分为:全局变量、静态全局变量、静态局部变量和局部变量。按存储区域分,全局变量、静态全局变量和静态局部变量都存放在内存的静态存储区域,局部变量存放在内存的栈区。按作用域分,全局变量在整个工程文件内都有效;静态全局变量只在定义它的文件内有效;静态局部变量只在定义它的函数内有效,只是程序仅分配一次内存,函数返回后,该变量不会消失;局部变量在定义它的函数内有效,但是函数
2016-11-28 09:11:00 600
原创 你的数据存放在哪
计算机三大组成部分:CPU 内存 硬盘 内存与硬盘的区别:内存保存动态数据,断电就会丢失,存放的是运行的数据。而硬盘保存动态数据,断电不丢失,存放的是静态的数据。 内存是共享设备,是稀缺资源,操作系统用来管理资源,给每个进程抽象出4G虚拟地址空间,虚拟空间通过MMU映射到物理地址。 进程虚拟地址空间划分:最高地址1G是内核空间,剩下3G是用户空间。 用户空
2016-11-28 09:09:03 1211
原创 字节长度 及 有符号数 无符号的计算
在32位系统中,1字节=8bit,1字=4字节=32bit,半字=2字节=16bit 字节长度(与编译器有相关性):变量在内存中占据空间 sizeof:测量变量或数据类型所占的字节长度 数据类型所占字节长度int 4字节 char 1字节 short 2字节long 4字节 float 4字节 double 8字节
2016-11-28 08:56:18 1860
转载 char如何计算溢出值
无符号char 类型能标示的数是:0-255有符号char类型能标示的数是:-128-127char c = 128;printf("c = %x \n", c);得到结果是:c = ffffff80这个如何理解 char是一个字节的,怎么变成四字节了???128的十六进制是0x80, 也就是2^7, 二进制看起来像这样:1000 000
2016-11-28 08:48:47 1063
原创 输入一个字符串 在输入帧头 帧尾 取合法帧 (标志位的使用)
#include#include#define MAX_SIZE 1024void head2tail(char *str,char *head,char *tail){ int m = 0;int n = 0;int k = 0;int low;int high;int len;int headlen;int taille
2016-11-28 08:43:40 545
原创 如何将一个整数变成字符串
#include #include #define MAX_SIZE 1024char *number_change_string(int num,char *src){ int i = 0; int len; char temp; while(num != 0) { src[i]
2016-11-22 22:55:25 1672
转载 右左法则
The right-left rule: Start reading the declaration from the innermost parentheses, go right, and then go left. When you encounter parentheses, the direction should be reversed. Once everything in the
2016-11-22 22:53:23 245
转载 指针与一维数组
一维数组访问数组元素的4种方法: 1.下标法,用a[i]来访问数组元素; 2.指针法,(ptr+i)形式间接访问; 3.数组名,用(a+i)形式访问数组; 4.指针下标法,ptr[i]形式访问数组元素; 二维数组访问数组元素 1.int *ptr;ptr=a[0]; for(i=0;ifor(j=0jscanf("%d",ptr++); ptr=a[0]
2016-11-20 23:20:50 418
原创 c语言和其他语言的区别
一、嵌入式开发中为什么选择C语言?首先嵌入式是在已有的硬件基础上,移植操作系统,而现在操作系统的内核都是用C实现的 二、为什么用C语言开发操作系统内核?C语言有三大特点(优点): ①C语言具有出色的可移植性,能在多种不同体系结构的软/硬件平台上运行(单片机,ARM等)(出色的移植性:1.一个软件从一个平台切换到另一个平台,修改的代码越
2016-11-20 23:14:44 4826
转载 常用字符串函数
字节拷贝函数:最近在复习C语言时 发现写C语言程序时常有语法上的错误 所以找了这篇学习一下void* memcpy1(void*dest, constvoid *src, size_tn){ assert(dest!=NULL&&src!=NULL); //有效性检测
2016-11-19 13:14:42 286
转载 C语言中auto,register,static等的介绍与作用
1)auto 这个关键字用于声明变量的生存期为自动,即将不在任何类、结构、枚举、联合和函数中定义的变量视为全局变量,而在函数中定义的变量视为局部变量。这个关键字不怎么多写,因为所有的变量默认就是auto的。(2)register 这个关键字命令编译器尽可能的将变量存在CPU内部寄存器中而不是通过内存寻址访问以提高效率。 (3)static 常见的两种用途:
2016-11-19 13:09:55 1228
原创 vim命令行及低行一些常用指令
vim命令行指令:yy复制p粘贴dd删除3yy复制3行10dd删除10行u恢复 底行命令:/hello 查找 :/随便输入一个没有的词 把查找颜色去掉?hello 查找s/hello/hi 替换(只替换第一个)s/hello/hi/g 替换全行s/hello/hi/gc 判断是否替换5,9 s/hello/hi/g 5-9行全部替
2016-11-19 13:07:28 568
C++/python opencv_traincascade训练自己的检测器
2018-11-27
基于python的TXT解析器 parser 包含各个版本的代码 见注释
2018-03-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人