自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 C++学习 (六)

//有关 STL 标准模板库的函数/* string 的 *//*#include <iostream>#include <string>#include <windows.h>using namespace std;void stringinit(){string s1; //无参构造函数string s2("hell...

2018-08-08 15:06:45 190

原创 nanopi--虚拟机连接

接下来的步骤就不需要联网了1.红帽的步骤1.1将改掉的ip改回来(从137....改成1....)这里我的红帽 网段是1 具体号码是90 1.2改完关机:shutdown -h now 1.3x shell中配置一个ssh的新连接 主机就用 192.168.90 2.主机上的操作2.1将WLAN的共享文件取消 2.2将vnet8和 连...

2018-08-08 14:29:50 278

原创 nanopi--共享文件夹

1)在nanopi 联网状态下进行共享文件的创建(上一篇博客)apt-get install samba​​​​​​​apt-get install smbclient2)   修改samba配置文件:Samba配置文件的路径是/etc/samba/smb.confa)   备份配置文件cp /etc/samba/smb.conf /etc/samba/smb.conf...

2018-08-08 14:28:56 313

原创 nanopi--联网更新

修改ip用以联网进行更新: 用网线将nanopi和你的电脑相连打开你的网络中心(记一下 哪个以太网被连上nanopi了)wifi模块属性 共享中勾选:允许其他网络用户通过此计算机的internet链接来链接里面的家庭网络连接里 选择 上面上你记住的那个以太网 X shell中打开你配好的nanopi输入sudo apt-get update完成更新...

2018-08-08 14:27:48 412

原创 nanopi--磁盘烧写

在玩nanopi 的时候 忘记备份文件 把里面的压缩包都删了 巨尴尬,啊哈哈,重新烧写一下系统下载nanopi-neo_FriendlyCore-Xenial_4.11.2_20171122.imgwin32diskimager.rar(解压出来Win32DiskImager.exe)官网有下载链接管理员身份右击运行 win32diskimager.rar 选择 上面的img ...

2018-08-08 14:27:01 429

原创 nanopi--基础配置

x shell 新建会话 改名 nanopi(自己随便取 看个人喜好在左侧找到 serial 点击 使用你接在电脑上的那个串口 波特率用 115200配置静态ip:命令是 :vi /etc/network/interfacesallow-hotplug eth0iface eth0 inet static   #static表示使用固定ip,dhcp表述使用动态ip...

2018-08-08 14:26:28 843

原创 QT和opencv学习(三)Qt信号槽

所谓信号槽,简单来说,就像是插销一样:一个插头和一个插座。怎么说呢?当某种事件发生之后,比如,点击了一下鼠标,或者按了某个按键,这时,这个组件就会发出一个信号。就像是广播一样,如果有了事件,它就漫天发声。这时,如果有一个槽,正好对应上这个信号,那么,这个槽的函数就会执行,也就是回调。就像广播发出了,如果你感兴趣,那么你就会对这个广播有反应。代码如下:#include <QtGui/QA...

2018-08-02 14:35:51 365

原创 C++学习 (五)

#include <iostream> using namespace std; class A{public:virtual void print(){cout<<"aaaaaaaa"<<endl;}}; class B:public A{public:void print(){cout...

2018-08-02 14:16:39 90

原创 C++学习 (四)

//内存单元地址分配、构造 的顺序与继承的顺序有关#include <iostream>#include <string>using namespace std; class A{public: int m_a; ~A() { cout << "~~A" << endl; }}; class A1 :virtu...

2018-07-29 10:47:08 105

原创 QT和opencv学习(三)基本的图像容器 --Mat

MatOpenCV自2001年以来就一直存在。在那些日子里,图书馆是围绕一个C接口构建的,并将图像存储在内存中,他们使用了一个名为IplImage的C结构。这是你将在大多数旧的教程和教育材料中看到的。这个问题的问题在于,它把C语言的所有缺点都带到了桌子上。最大的问题是手动内存管理。它建立在用户负责处理内存分配和回收的假设之上。虽然这不是小程序的问题,但是一旦您的代码库增长了,那么处理所有这些问...

2018-07-29 09:53:12 1555

原创 C++学习 (三)

//运算符重载的相关知识点//重载:一名多用 自定义规则//不可重载的运算符: . :: .* ?: sizeof//重载后的优先级不变 不改变结合性和所需操作数 不去创建新的运算符 //<< >>只能用全局函数重载 //= , 【】 , () , -> ,只能用成员函数重载 //c...

2018-07-27 14:32:53 103

原创 QT和opencv学习(二)opencv的加载、显示、修改、保存图像

加载图像(用cv::imread) imread功能是加载图像文件成为一个Mat对象,其中第一个参数表示图像文件名称 第二个参数,表示加载的图像是什么类型,支持常见的三个参数值 IMREAD_UNCHANGED (<0) 表示加载原图,不做任何改变 IMREAD_GRAYSCALE ( 0)表示把原图作为灰度图像加载进来 IMREAD_COLOR ...

2018-07-25 10:32:07 2841 1

原创 C++学习 (二)

//对象初始化列表 对类内调用类(构造函数有参) 在后面直接赋值#include <iostream>#include <windows.h>#pragma warning(disable:4996)using namespace std;class Birthday{private:    int year;    int month;    in...

2018-07-25 10:00:40 160

原创 QT和opencv学习(一)配置

下载安装软件下载vs 2017,根据自己所需安装。 下载Qt 5.11.1,选择适合自己电脑的版本下载安装,我选的是qt-opensource-windows-x86-msvc2017_64-5.11.1,一路继续即可。 下载vsaddin,由于是vs2017,故下载qt-vsaddin-msvc2017-2.2.1.vsix,双击安装即可。 下载opencv3.4,下载压缩包解压即可。...

2018-07-20 10:56:58 5468

原创 C++学习 (一)

#include <iostream>using namespace std;int aaaa;//不赋值 直接输出它的值的时候,因为是全局变量 所以默认给了值 0,如果是局部变量 那么就是一个垃圾值//在C中全局变量可以重复定义 后定义的覆盖前面的 但是 C++不行 检测机制更加严格namespace A{    int a = 1;    void print(...

2018-07-19 09:13:49 96

原创 学习Linux C编程 笔试训练(二)

linux中 文件属性以 l、b、c、d。开头的都是什么文件?l是链接,相当于windows的快捷方式d是目录,相当于windows的文件夹c是字符设备文件,给你说你不懂,鼠标,键盘算是b是块设备,硬盘就是一个例子 /etc/services : 定义网络服务的端口 linux中 UID PID PPID 分别是什么?UID是用户ID,PID是进程ID,

2018-01-30 11:34:14 204

原创 学习Linux C编程 笔试训练(一)

static关键字的作用:(1)设置局部变量的存储域,static局部变量的作用范围为该函数体,该变量的内存只被分配一次,因此其值在下次调用时仍维持上次的值; (只执行一次,延长局部变量的声明周期直至程序结束)(2)限制全局变量的作用域,static全局变量可以被模块内所用函数访问,但不能被模块外其它函数访问;(3)限制函数的作用域,static函数只可被这一模块内的其它函数调用,

2018-01-25 18:57:16 191

原创 学习Linux C编程之网络编程(一)

1. 网络中进程之间如何通信 网间进程通信要解决的是不同主机进程间的相互通信问题(可把同机进程通信看作是其中的特例)。为此,首先要解决的是网间进程标识问题。同一主机上,不同进程可用进程号(process ID)唯一标识。但在网络环境下,各主机独立分配的进程号不能唯一标识该进程。 其次,操作系统支持的网络协议众多,不同协议的工作方式不同,地址格式也不同。因此,网间进程通信还要解决多重协议

2017-12-08 12:57:00 284

原创 学习Linux C编程之操作系统基础训练

1、简述Linux进程内存空间分为哪几个段?作用分别是什么?3个段,数据段,代码段,堆栈段数据段:存放全局变量,静态变量static,其中BSS数据段存放为初始化的全局变量和static,数据段存放初始化的全局变量。代码段:存放程序的代码的数据。堆栈段:存放子程序的返回地址,子程序的参数以及程序的局部变量等。2、如何查看进程的信息(线程数):1.使用top命令,具体用法是

2017-12-07 11:29:21 155

原创 学习Linux C编程之多线程编程

1. 线程和进程的区别:进程是系统中程序执行和资源分配的基本单位。每个进程有自己的数据段、代码段和堆栈段。线程通常叫做轻型的进程。线程是在共享内存空间中并发执行的多道执行路径,他们共享一个进程的资源。线程和进程比起来很小,所以相对来说,线程花费更少的CPU资源。 2.pthread_exit和exit的区别什么?当初始线程从main()调用返回时或调用exit()时,整个进

2017-12-01 14:30:54 179

原创 学习Linux C编程之进程间通信(二)

信号量   信号量又称为信号灯,它是用来协调不同进程间的数据对象的,而最主要的应用是前一节的共享内存方式的进程间通信。本质上,信号量是一个计数器,它用来记录对某个资源(如共享内存)的存取状况。一般说来,为了获得共享资源,进程需要执行下列操作:  (1) 测试控制该资源的信号量。  (2) 若此信号量的值为正,则允许进行使用该资源。进程将信号量减1。  (3) 若此信号量为0,则该资

2017-12-01 14:25:58 201

原创 学习Linux C编程之进程间通信(一)

Linux进程间通信的目的:数据传输:一个进程需要将他的数据发送给另一个进程,发送的数据量在一个字节到几兆字节之间;共享数据:多个进程想要共享数据,一个进程对共享数据的修改,别的进程应该立刻看到;通知事件:一个进程需要向另一个或一组进程发送消息,通知它发生了某种事件(如进程终止前要通知父进程);资源共享:多个进程之间共享同样的资源。为了做到这一点,需要内核提供锁和同步机制;进程

2017-12-01 14:19:04 258

原创 学习Linux C编程之进程控制编程

创建进程 forkfork 的定义在 Linux 中,我们使用 fork 来创建一个子进程fork 的返回值fork 函数有些特殊,成功它返回 2 次,失败返回 -1,利用这个特性可以判断当前的进程是子进程还是父进程: 1. 在子进程中返回 0 2. 在父进程中返回子进程的进程 IDfork 的写时复制技术通过执行 fork,子进程得到父进程

2017-11-23 18:54:37 239

原创 学习Linux C编程之文件操作

1)fopen函数fopen函数类似于系统调用中的open函数。和open一样,它返回文件的标识符,只是这里叫做流(stream),在库函数里实现为一个指向文件的指针。如果需要对设备的行为进行明确的控制,最好使用底层系统调用,因为这可以避免使用库函数带来的一些非预期的副作用,如输入/输出缓冲。函数原型:#includeFILE *fopen(const char *file

2017-11-23 18:45:58 169

原创 学习Linux C编程之栈

栈是限制在一段进行插入操作和删除操作的线性表(俗称堆栈),允许进行操作的一端称为“栈顶”,另一固定端称为“栈底”,当栈中没有元素称为“空栈”。特点:先进后出(FILO)。栈顶即top,这里top有两种定义方式:1、满栈(Full Stack),top指向最后一个使用的空间;2、空栈(Empty Stack),top指向下一个可用的空间;     栈也是线性表

2017-11-03 14:27:03 167

转载 数据库基础知识

第一章 基本知识数据和信息信息:关于现实世界事物存在方式和运动状态的反映。数据:通常指用符号记录下来的、可以识别的信息。数据处理和数据管理数据处理是指从某些已知的数据出发,推导加工出一些新的信息。数据管理是指数据的收集、整理、存储、维护、检索、传送等操作。这部分操作是数据处理业务的基本环节,而且是任何数据处理业务中必不可少的共有部分。

2017-11-02 14:44:36 833

原创 学习Linux C编程之预处理与结构体

1、宏定义的位置及作用域? 宏定义必须写在函数之外,其作用域为宏定义命令起到源程序结束,也可以用“#undef”命令终止。2、文件包含命令“”与使用使用“”表示首先在当前的源文件目录中查找,若未找到才到包含目录中查找。3、什么是结构体 将一些相关联的数据打包成一个整体,方便使用,这种多个数据组合起来的一个整体其表现形式就是一个结构体结构体的一般定义形式为:

2017-10-27 12:38:34 130

原创 学习Linux C编程之线性表

1、概念线性表:是具有相同属性的数据元素的一个有限序列线性表的逻辑结构示意图:线性表的存储结构分为:顺序、链接、索引和散列等,常见的是顺序存储和链接存储(单链表和双链表)。2、线性表的顺序存储结构线性表的顺序存储结构:把线性表中的所有元素按照其逻辑顺序依次存储到计算机存储器中从指定存储位置开始的一块连续的存储空间中,可直接用数组表示。线性

2017-10-27 12:36:24 202

原创 学习Linux C编程之函数

C 源程序由多个函数组成,main函数是主函数,有且只能有一个main函数。它可以调用其他函数,调用结束后返回main函数,最后由main函数结束整个程序。在 C 中函数的定义可以在main函数之前也可以在main函数之后。如果在main函数之后定义,则在main函数之前进行函数的声明。函数的声明即 你定义函数的第一行,在最后加上一个分号即可;函数的声明与定义无

2017-10-20 13:28:57 191

原创 学习Linux C编程之数组与指针

1.    指针类型分析分析指针,可以从变量名处起,根据运算符优先级结合,一步一步分析. int p;  //这是一个普通的整型变量 int *p;  //首先从P处开始,先与*结合,所以说明P是一个指针,然后再与int结合,说明指针所指向的内容的类型为int 型.所以 P是一个返回整型数据的指针 int p[3]; //首先从P处开始,先与[]结合,说明P 是一个数组,然后与in

2017-10-17 20:19:00 130

原创 学习Linux C编程 strlen及unsigned问题

strlen用法:#include 功能:计算字符串s的(unsigned int型)长度说明:返回s的长度,不包括结束符NULL。注意点遇到\0终止,例如:int a[1000]={0,1};printf("%d",strlen(a[0]));输出为0,因为是\0unsigned直接举例:#include int

2017-10-14 11:55:43 544

转载 学习他人经验之循环语句深入学习(转载)

C语言有三种循环结构:while、for和do while。下面依次讲解一、while循环1、while介绍while(逻辑表达式) //布尔值为1 真{反复执行的语句}                            只要逻辑表达式结果为真就反复不停执行大括号里的语句,直到逻辑表达式结果为假循环结束只要把逻辑表达式写成1则循环成为死循环,wh

2017-10-13 13:11:44 351

原创 学习Linux C编程之语句 问题-break和continue

break和continue都是用来控制循环结构的,主要是停止循环。1.break有时候我们想在某种条件出现的时候终止循环而不是等到循环条件为false才终止。这是我们可以使用break来完成。break用于完全结束一个循环,跳出循环体执行循环后面的语句。2.continuecontinue和break有点类似,区别在于continue只是终止本次循

2017-10-13 13:08:38 442

原创 学习Linux C编程之运算符、表达式 问题-逻辑运算符短路问题

逻辑运算符“||”前面为false,无论“||”后面是true还是false,结果都返回“||”后面的值。“||”前面为true,无论“||”后面是true还是false,结果都返回“||”前面的值。“&&”前面是false,无论“&&”后面是true还是false,结果都将返“&&”前面的值;“&&”前面是true,无论“&&”后面是true还

2017-10-12 21:53:34 326

原创 学习Linux C编程之数据类型 问题-extern及static修饰全局变量的区别

在实际开发C++项目的时候,一个项目里面往往会包含多个cpp文件,多个头文件,有时还会有c文件。由于变量的声明可以有多次,但定义只能有一次,这就不可避免地要使用extern,static关键字。弄清楚这几个关键字之间的用法和区别,能节省很多调试项目的时间,尤其是对于一些难以定位的链接错误。下面分别介绍:一、extern关键字这个关键字可能是最容易用错的一个,一方面可能是因为平时写的小程序不

2017-10-11 23:00:11 307

原创 学习Linux C编程之语句

一、空语句由分号“;”构成,作用:1.消耗cpu,起延时作用 2.使程序结构清楚,可读性好二、基础语句1.表达式+;2.函数名+;三、语句if    注意:1.不可将布尔量直接与TRUE、FALSE或者1、0作比较,例如VC++将TRUE定义为1,而VB将TURE定义为-1.          2.整型变量应当用==或!=直接与0比较。          3.浮点变

2017-10-07 19:34:15 157

原创 学习Linux C编程之运算符、表达式

一、运算符优先级优先级运算符名称或含义使用形式结合方向说明1[]数组下标数组名[常量表达式]左到右()圆括号(表达式)/函数名(形参表).成员选择(对象)对象.成员

2017-10-05 22:01:45 345

原创 学习Linux C编程之数据类型

一、变量与常量1.    变量局部变量在函数内定义说明,作用域为函数内,离开函数再调用即为非法。注意:1.主函数定义主函数用,不能被其他函数用,主函数也不能用其他函数定义变量。2.形参属于被调函数局部变量,实参属于主调函数局部变量。3.允许不同函数使用相同变量名。4.复合语句可定义变量,作用域在复合语句内      全局变量      又称外部变量,函数外定

2017-10-04 21:41:19 214

原创 学习gcc,make,gdb相关知识

一、GCC 1)  GCC可以为x86、ARM、MIPS等不同体系结构的硬件平台编译程序。 2)  GCC可以编译C、C++、Pascal、Java等数十种高级语言。 GCC的这两项特性对嵌入式应用开发及其重要。此外,GCC的编译效率也是非常高的,一般要高出其他编译系统20%到30%左右。所以在嵌入式Linux开发领域,使用的基本上就是GCC编译系统。gcc命令的使用格式为:

2017-10-03 22:20:23 239

原创 学习Linux基本命令60个(下)

四、网络操作1.ifconfig 用于查看和更改网络接口的地址和参数,包括IP地址、网络掩码、广播地址 超级用户ifconfig -interface [options] address-interface:指定的网络接口名,如eth0和eth1。up:激活指定的网络接口卡。down:关闭指定的网络接口。broadcast address:设置接口的广播地址。point

2017-10-02 21:30:28 600

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除