自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小Q 的博客

One Hello!One World!

  • 博客(94)
  • 资源 (3)
  • 收藏
  • 关注

原创 minicap编译和使用详细步骤,亲测可行

问题:minicap 运行node时提示Error: Cannot find module ‘ws’2.更新子模块(libjpeg-turbo)下载并安装NDK,配置环境变量。可以实时截屏并传输的工具。4、编译minicap。5、将文件拷贝到设备中。6、运行minicap。

2023-09-16 14:23:18 489

原创 Android零基础进阶 | JNI

Android零基础进阶 | JNIJNI背景JNI和NDK的关系JNI的实现流程Jni编写大致过程声明Native方法通过javah生成相应的Native头文件实现相应的方法数据类型基础数据类型类型签名与JNIEnv相关的常用函数NDK生成so的流程Java调用.so步骤:JNI背景Java的一个显著的特点就是跨平台,但是正因如此,Java和本地机器的交互就很少。但是在某些情况下,比如提升性...

2019-06-20 19:47:14 510

原创 今日份的Node.js已就位—Express框架(05)

目录今日份的Node.js已就位—简介(01)今日份的Node.js已就位—Http模块(02)今日份的Node.js已就位—自定义模块(03)今日份的Node.js已就位—实现C/S通信(04)今日份的Node.js已就位—Express框架(05)前沿:Express框架是一个简洁而灵活的 node.js Web应用框架,其也属于一个模块,安装方式和之前相同,通...

2019-03-17 16:16:17 295

原创 今日份的Node.js已就位—实现C/S通信(04)

目录今日份的Node.js已就位—简介(01)今日份的Node.js已就位—Http模块(02)今日份的Node.js已就位—自定义模块(03)今日份的Node.js已就位—实现C/S通信(04)今日份的Node.js已就位—Express框架(05)前言C语言版本的客户端(C)和服务器(S)进行通信已经实现,其根本是建立在TCP/IP连接的基础上,完成三次握手实现...

2019-03-17 13:19:30 528

原创 今日份的Node.js已就位—自定义模块(03)

目录今日份的Node.js已就位—简介(01)今日份的Node.js已就位—Http模块(02)今日份的Node.js已就位—自定义模块(03)今日份的Node.js已就位—实现C/S通信(04)今日份的Node.js已就位—Express框架(05)什么是模块?模块系统?之前已经说过模块的安装注册以及Http模块的简单使用,那么什么是模块呢?模块就相当...

2019-03-17 12:21:10 206

原创 今日份的Node.js已就位—Http模块(02)

目录今日份的Node.js已就位—简介(01)今日份的Node.js已就位—Http模块(02)今日份的Node.js已就位—自定义模块(03)今日份的Node.js已就位—实现C/S通信(04)今日份的Node.js已就位—Express框架(05)已经了解了如何安装和使用Node.js,那么下面开始进行模块的学习。模块是Node.js的一个核心,那么如何...

2019-03-16 20:30:13 274

原创 今日份的Node.js已就位—简介(01)

目录今日份的Node.js已就位—简介(01)今日份的Node.js已就位—Http模块(02)今日份的Node.js已就位—自定义模块(03)今日份的Node.js已就位—实现C/S通信(04)今日份的Node.js已就位—Express框架(05)什么是Node.js?Node:Node 是一个让 JavaScript 运行在服务端的开发平台,它让 Jav...

2019-03-16 20:27:37 584

原创 什么是面向连接和无连接呢?

    面向连接和无连接关键在于连接有无的区别,那么首先面向连接指的是在双方进行通信之前首先要建立一个会话(三次握手),确保消息的准确到达,如果有什么问题能够相互通知然后解决。举个栗子:打电话  那么无连接就好比寄信,只是说写信人写好对方的地址和自己的姓名地址然后就交给邮递公司了,至于到没到达也不能即使确认,所以是不可靠的。    比如说你中了一百万,然后工作人员再给你打钱之前首先和你通个电话...

2018-10-27 13:40:58 5833

原创 Android下LineLayout实现View自动换行

        在进行Android开发的时候,比如我们添加view到LineLayout中,如果是水平布局可能会一直水平添加导致产生“超出屏幕”的类似现象,所以就需要进行换行操作,下面是进行换行的代码,可以直接使用~         import java.util.ArrayList;import java.util.List;import android.annotation...

2018-09-09 11:13:52 3126

原创 同步异步和阻塞非阻塞的理解

今天偶然遇到了关于同步异步的问题,感觉心里有点b数,但真要说出其中一二还真是开不出口,于是决定好好搜索一番来一波深入理解并用简明易懂的方式写下来。 首先,同步异步和阻塞非阻塞不是一回事,在某些意义上两者有着相似之处,但也要明白二者的区别。同步和异步强调的是“消息通信机制”。同步:调用者执行一个操作之后,等待结果,结果到达之后才继续执行后续的操作。异步:调用者执行一个操作之后,不...

2018-07-29 22:47:31 550 1

原创 Python学习之路(二)

神奇的数组1、数组值插入    数组值插入有三种方式,分别为append()、extend()和insert()。    append():在最后添加一个值,一次只能添加一个。    extend() :在最后添加值,但可以一次添加多个值。    insert()   :在指定位置插入一个值。>>> empty.append("1"+"2")>>> empty...

2018-07-07 21:07:44 942 1

原创 Python学习之路(一)

一、Python语言是什么?     Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。    解型语言即不是将源代码直接翻译成机器语言,而是先转换为中间代码再通过解释器解释运行。    在编译的时候编译器不知道数据的真实类型,只有在运行的时候才知道数据的真实类型二、Python语言能够学到什么?    1、面向对象的编程思维。    2、运用模块进行编程。    3、游戏编程。...

2018-06-26 10:46:14 191

转载 深入理解TAILQ队列

TAILQ是FreeBSD/linux内核对双向队列操作的一种抽象,抽象程度不亚于C++,能实现操作队列需要的各种操作:插入元素,删除元素,遍历队列等。这个队列的优点是插入元素很快。 这里先回顾一下队列的特点(来自维基百科http://zh.wikipedia.org/wiki/%E9%98%9F%E5%88%97):队列,又称为队列(英文queue),是先进先出(FIFO, First...

2018-02-27 22:23:46 4123

原创 反转单链表

方法一将原链表中的结点依次放入一个新的链表中实现反转while (list->next != NULL) { tmp = newList->next; //保存newList中的原后续结点 newList->next = list->next; //将list的第一个结点放到newList中 li

2017-08-30 16:32:44 384

转载 交换机和路由器的区别

计算机网络往往由许多种不同类型的网络互相连接而成。如果几个计算机网络只是在物理上连接在一起,它们之间并不能进行通信,那么这种“互连”并没有什么实际意义。因此通常在谈到“互连”时,就已经暗示这些相互连接的计算机是可以进行通信的,也就是说,从功能上和逻辑上看,这些计算机网络已经组成了一个大型的计算机网络,或称为互联网络,也可简称为互联网、互连网。      将网络互相连接起来要使用一些中间设备(或

2017-08-26 07:41:24 801

原创 Qt编写的我的记事本

#include "mainwindow.h"#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #inclu

2017-08-26 07:37:00 1180

原创 Qt编写的猜数字小游戏

#include "widget.h"#include "ui_widget.h"#include #include Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget){ ui->setupUi(this); Init();}Widget::~Widget()

2017-08-26 07:34:46 2648

原创 Qt编写的计算器

#include "widget.h"#include "ui_widget.h"#include Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget){ ui->setupUi(this); Init();}Widget::~Widget(){ dele

2017-08-26 07:32:55 870

原创 Qt布局、文件会话框操作

#include "widget.h"#include #include #include #include #include #include #include #include //iostream#include #include #include #include #include #include #include #include n

2017-08-26 07:29:30 287

转载 TCP/IP四层模型和OSI七层模型的概念

TCP/IP四层模型TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。TCP/IP协议簇分为四层,IP位于协议簇的第二层(对应OSI的第三层),TCP位于协议簇的第三层(对应OSI的第四层)。  TCP/IP通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。这4层分别为: 应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、

2017-08-17 09:26:20 248

原创 VS2013环境下编写的俄罗斯方块源代码

#include #include #include #include #include #include #include //#include using namespace std;/*IMAGE qiangbi;*/#define MAX_X 23#define MAX_Y 21#define LOGO 'H'int array[MAX_X][MAX_Y]

2017-07-28 10:05:08 3386

原创 请问下面的程序一共输出多少个“-”?

题目:int main(void){    int i;    for (i = 0; i < 2; i++) {         fork();         printf("-");     }     return 0; } A、2B、4C、6D、8答案:D解析:fork函数是计算机程序设计中的分叉函数。返回值: 若成功调用一次则返回两个值,

2017-07-26 11:09:23 1926

原创 const放在函数前后的区别

一、const修饰指针int b = 500;1、const int * a = & b;2、int const * a = & b;3、int * const a = & b;4、const int * const a = & b;对于1和2const 放在*左侧,就是用来修饰指针所指向的变量,即指针指向的是常量。若a是仓库管理员,b是仓库。即仓库中的货物

2017-07-21 14:26:30 7122

原创 结构体内存对齐规则是什么?

题目:struct T{char a;int * d;int b;int c:16;double e;}; T *p;在64位系统以及64位编译器下,以下描述正确的是:A.sizeof(p) == 24B.sizeof(*p) == 24C.sizeof(p ->a) == 1D.sizeof(p->e) == 8答案:C分析:语法格式: s

2017-07-21 09:37:18 417

原创 进程和线程的区别、完全二叉树和满二叉树的区别

一、进程和线程的区别进程:子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品。线程:相对与进程而言,线程是一个更加接近与执行体的概念,它可以与同进程的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。两者都可以提高程序的并发度,提高程序运行效率和响应时间。线程和进程在使用上各有优缺点:线程执行开销小,但不利于资源管理和保护;而进程正相反。同时,线程

2017-07-18 19:17:59 511

转载 程序员面试50题—sizeof的用法

以下为Windows下的32 位C++程序,请计算sizeof 的值void Func ( char str[100] ){sizeof( str ) = ?}void *p = malloc( 100 );sizeof ( p ) = ?解答:sizeof( str ) = 4sizeof ( p ) = 4剖析:Func ( char str[100

2017-07-07 19:52:47 435

原创 R6010 -abort() has been called错误

一、R6010 -abort() has been called错误1、多线程占用同一个变量2、内存分配不够3、指针访问内存越界出现问题二、无法实现多线程并发将线程等待修改为非阻塞等待(detach())三、线程和网络同时使用,bind绑定错误提示无相应的匹配类型使用std::thread ,避免bind冲突避免使用using namespaces st

2017-07-02 13:30:46 4105

原创 西文图书管理系统(C++、线程、网络socket、MYSQL)

西文图书管理系统(C++、线程、网络socket、MYSQL)服务器端:#include#include#include#include#include #include #include#pragma comment(lib,"ws2_32.lib")#pragma comment(lib,"C:\\Program Files\\MySQL\\MySQL Server 5.7\\lib\\libmysql.lib")struc

2017-07-02 13:18:59 1185

原创 C++网络编程

客户机代码:#include "stdafx.h"#include "winsock2.h" #include #pragma comment(lib, "ws2_32.lib") using namespace std;BOOL RecvLine(SOCKET s, char* buf); //读取一行数据 int main(int argc, char* argv[]

2017-07-02 13:12:46 315

原创 C++文件操作

除了标准输入输出流类istream、ostream和iostream类外,还有3个用于文件操作的文件类:流的名称流的作用ifstream类从istream类派生的,用来支持从磁盘文件的输入ofstream类从ostream类派生的,用来支持向磁盘文件的输出fstream类

2017-06-24 13:07:10 242

原创 C++访问MYSQL数据库

#include #include #include #include // SDK software development kit//简易版本的服务器using namespace std;//#pragma comment(lib,"D:\\Program Files\\MySQL\\MySQL Server 5.6\\lib\\libmysql.lib") int m

2017-06-23 15:24:36 365

原创 C++之MYSQL数据库

一、什么是MYSQL?MySQL是一个关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。二、简单概念元组(记录):表中的一行即为一个元组,或称为一条记录。属性(字段):数据表中的每一列称为一个字段,表是由其包含的各种字段定义的,每个字段描述了它所含有的数据的意义,数据表的设计实际上就是对字段的设计。

2017-06-23 15:16:21 669

原创 STL标准模板库归纳总结

一、STL标准模板库的组成STL包括:容器(containers)、迭代器(iterator)、算法(algorithm)、函数对象、函数适配器二、容器1、分类顺序容器:1、vector ->向量数组 2、deque-> 队列3、list 链表关联容器:4、map ->二叉树  //4、5键值必须不同5、set ->集合6、multiset

2017-05-30 15:33:03 657

原创 Qt之行编辑器

行编辑器是一个单行的文本编辑器,允许用户输入和编辑单行的纯文本内容。一、显示模式:Normal:正常显示NoEcho:不显示任何输入PassWord:密码样式,以黑点代替显示PasswordEchoOnEdit:编辑时正常,其余以密码样式显示二、输入掩码目的:限制输入的内容,可使用一些特殊字符设置输入的格式和内容例如:将一个文本框属性inpu

2017-05-25 15:49:11 2802

原创 Qt之按钮部件

一、QPushbotton按钮1、拖入按钮,查看属性。flat:不显示该按钮的边框checkable:使得按钮具有选中和未选中两种状态(一直被按下或松开)2、在类的构造函数中添加 ui->setupUi(this); ui -> pushBtn1 -> setText(QObject::tr("&nihao")); //文本显示,

2017-05-25 15:26:01 368

原创 Qt之窗口部件2

一、QFrame类1、新建GUI项目2、打开ui文件,拖入一个frame部件。3、选择相应的属性。4、选中(Box和Sunken的结果)各种搭配的形状:二、QLabel类(显示文本或者图片)(1)显示文本1、拖入一个label并放大2、设置对齐方式(水平-AlignHCenter 竖直-AlignVCenter 则可以显示在正中央),

2017-05-22 19:43:48 412

原创 string的一些常用函数用法

头文件:#includeusing namespace std;一、构造函数string(const char *s);    //用字符串s初始化string(int n,char c);     //用n个字符c初始化二、常用功能函数1、int length()const;       //返回当前字符串的长度2、void resize(int

2017-05-15 15:01:49 766

原创 多态、malloc和new的区别

一、什么是多态性?多态:“一个接口,多个方法”。静态多态:在调用函数时在编译时可确定调用地址则称之为静态多态。动态多态:在调用函数时在运行时可确定调用地址则称之为静态多态。C++多态是通过虚函数来实现的,子类重新定义基类成员函数的做法叫做重写,只有重写了虚函数才能体现出多态。二、malloc和new的区别1、malloc()和free()(1)C++/C语言的标

2017-05-15 14:48:40 310

原创 继承和派生

一、派生类的声明:class 派生类名:继承方式 基类名1, 继承方式 基类名2,...,继承方式 基类名n{    派生类成员声明;};构造函数的调用顺序只和声明时的顺序有关。二、引用和指针的区别1、引用不存在空引用,必须指向一块合法的内存,指针存在空指针。2、引用必须在创建时初始化,指针可以在任何时候初始化。3、引用只能够被初始化一次,不

2017-05-10 14:54:31 300

原创 Qt之各种对话框(信号和槽)

一、多窗口切换第一步:首先创建一个项目,之后进入ui设计模式,在左侧找到Label和Push Button这两个左键拖入。第二步:双击Label将其修改为主界面,之后在Push Button 右键选择clicked()转到槽。第三步:在函数槽中添加:(需要包含#include)void MainWindow::on_pushButton_clicked(){ QD

2017-04-30 13:31:35 6357

ResignTool.tar

为了省去那么多签名步骤自己写的重签名工具,只需要点点点 点,一键操作,简单实用。

2020-06-08

C++五子棋对战(VS)

在VS2013环境下编写,可实现各方位胜利弹框提示。

2017-07-28

C++俄罗斯方块源代码(vs)

在VS2013环境下编写俄罗斯方块,可实现消除、变换图形、增加速度、暂停等功能

2017-07-28

空空如也

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

TA关注的人

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