自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 资源 (46)
  • 收藏
  • 关注

原创 Linux 宏定义debug调试

1,宏定义:#include <stdio.h>#include <stdarg.h>#define BUFFER_SIZE 1024#define DEBUG_LEVEL 4typedef enum{ DEBUG_LEVEL_ERROR=0, DEBUG_LEVEL_WARNING, DEBUG_LEVEL_NOTICE...

2019-04-29 22:47:31 1212

原创 Linux 内核阅读宏定义#define的使用总结

面试中定义一个比较两个数大小的宏:简单的宏定义:#define MAX(x,y) x > y ? x : y此种写法当x,y是表达式时会出问题:所以基本改进如下:#define MAX(x,y) (x) > (y) ? (x) : (y)#define MAX(x,y) ((x) > (y) ? (x) : (y)) //此种方法最好上面几种写法是...

2019-04-27 23:42:09 1341

原创 Linux 下 v4l2采集yuyv用sdl2播放

#include<stdio.h>#include<unistd.h>#include<stdlib.h>#include<fcntl.h>#include<linux/videodev2.h>#include<string.h>#include<errno.h>#include<sys/mm...

2019-04-27 23:03:52 744

原创 linux nanopi3 lcd 闪屏处理

当换上自己的lcd屏幕时,发现屏幕上的黑点总是在闪烁,刚开始我们一直以为是屏幕频率的问题,所以我们之前的nanopi3中的lcds.c里面的lcd702结构体里面的.freq改为70,100,因为我们觉得屏幕闪动就是频率太低,但是改了以后还是没有用,那么lcd的屏幕闪烁到底是什么造成的呢?我们来看下代码:static struct nxp_lcd wvga_s702 = { .widt...

2019-04-27 15:25:01 1025 3

原创 Linux lcd驱动开发学习

做Linux lcd驱动移植时,先找到lcd驱动的位置:grep "s702" -nR例如:我的nanopc t3 plus可以看到:可以看到,上面有相应的lcds.c,因为我们的开发板是nanopi t3 plus,即进入到nanopi3,看看里面的lcds.c的类型的s702的结构体即可,既是如下static struct nxp_lcd wvga_s702 = { ...

2019-04-27 14:45:23 443

原创 Linux vimrc设置总结

"启用鼠标set mouse=aset selection=exclusiveset selectmode=mouse,keyset tabstop=4set background=darkset smartindentset nocompatible " 关闭 vi 兼容模式syntax on " 自动语法高亮"colorscheme molokai 设定配色方案set n...

2019-04-27 13:05:07 494

原创 #和##的总结

#define paster( n ) printf( “token &amp;amp;amp;amp;amp;quot; #n” = %d\n &amp;amp;amp;amp;amp;quot;, token ## n )注意:(1)#n 两边的引号必须要 (2) ## 两边的空格可有可无,不影响&amp;amp;amp;amp;amp;quot;#&amp;amp;amp;amp;amp;quot;用来把参数转换成字符串,是给参数加上双引号。&amp

2019-04-26 23:32:26 840

原创 Linux v4l2编程API

在进行V4L2开发中,常用的命令标志符如下(some are optional): • VIDIOC_REQBUFS:分配内存 • VIDIOC_QUERYBUF:把VIDIOC_REQBUFS中分配的数据缓存转换成物理地址 • VIDIOC_QUERYCAP:查询驱动功能 • VIDIOC_ENUM_FMT:获取当前驱动支持的视频格式 • VIDIOC_...

2019-04-26 23:14:30 296

原创 SecureCRT 数据库里没找到防火墙 '无'

SecureCRT 数据库里没找到防火墙 ‘无’找到CRT的菜单栏->选项->全局选项->常规复制出配置文件夹的路径,我的:\isilonpub.fiberhome.com\fiberhomeQuser\ttang103\AppData\Roaming\VanDyke\Config打开cmd: win+R粘贴上面的路径,看里面的配置文件.ini将session里面的....

2019-04-23 21:30:20 1118

原创 Linux qt5 thread线程编程

my_thread.cpp#include "mythread.h"#include <QPainter>#include <QPen>#include <QBrush>#include <QImage>MyThread::MyThread(QObject *parent) : QObject(parent){}void ...

2019-04-22 23:00:08 683

原创 Linux qt5 socket(TCP)编程

1_server.cpp#include <QWidget>#include <QTcpServer> //监听套接字#include <QTcpSocket> //通信套接字namespace Ui {class ServerWidget;}class ServerWidget : public QWidget{ Q_OBJEC...

2019-04-22 22:39:20 2450

原创 Linux 下面Valgrind跟踪内存泄漏

在写大型C/C++工程时难免会发生内存泄漏现象,系统编程中一个重要的方面就是有效地处理与内存相关的问题。你的工作越接近系统,你就需要面对越多的内存问题。有时这些问题非常琐碎,而更多时候它会演变成一个调试内存问题的恶梦。 常见的内存问题一共七种:1. 动态内存泄露;2. 资源泄露,比如文件指针不关闭;3. 动态内存越界;4.数组内存越界;5.动态内存double free;6.使用野指针,即未...

2019-04-19 00:48:20 509

原创 Linux memwatch 的使用

下载代码:http://www.linkdata.se/sourcecode/memwatch/下载代码后解压得到如下文件mamwatch.c和memwatch.h是不用动的,我们需要改的是test.c第一步,在test.c加入头文件 #include"memwatch.h"其次编写自己的代码:我的代码如下:#include <stdio.h>#in...

2019-04-18 22:53:24 610

原创 Linux mtrace调试内存泄漏

本文只介绍一个实用的linux小命令:mtrace(memory trace), 它能够用来协助定位内存泄露Linux下测试代码:4_trace.c#include <stdio.h>#include<stdlib.h>int main(){ setenv("FREE_TRACE", "taoge.log", "1"); ...

2019-04-18 22:09:49 319

原创 Linux gdb检测之core dump

首先创建一个测试文件,命名为3_coredump.c#include <stdio.h> int func(int *p){ *p = NULL;} int main(){ func(NULL); return 0;}gcc 3_coredump.c -o 3_coredumulimit -c u...

2019-04-18 21:08:07 209

原创 使用GDB调试时attach ID不允许的操作

gdb attach PID出错:不允许的操作(1)挂起程序:gcc 2_threadLock.c.c -lpthread -g -o 2_threadLockps -aux|grep 2_threadLock 查看pidps -aL 查看线程id号pstree -p pid(此处的pid是上面输出的pid)出错后,按下面做法做即可:sudo vim /etc/sysctl....

2019-04-17 23:38:13 1550 3

原创 Linux 进程调度算法c语言描述

进程调度分为:长程调度,又称作业调度,用于决定把外存上处于后备队列中的哪些作业调入内存,并为它们创建进程、分配必要的资源,然后,再将新创建的进程排在就绪队列上,准备执行。短程调度,又称进程调度和cpu调度,用来决定就绪队列中的哪个进程应获得cpu,然后再由分派程序把处理机分配给该进程的具体操作。常见的cpu调度算法有先到先服务调度(FCFS)、最短作业优先调度(SJF)、优先级调度(pri...

2019-04-17 21:44:08 1936

原创 Linux单处理器进程调度c语言描述

本次实现的是模拟在单处理器情况下的处理器调度,目的是设计一个按优先数调度算法实现处理器调度的程序。每一个进程用一个进程控制块PCB来代表,进程控制块的格式为:进程名——作为进程的标识,假设五个进程的进程名分别为P1,P2,P3,P4,P5。指针——按优先数的大小把五个进程连成队列,用指针指出下一个进程的进程控制块的首地址,最后一个进程中的指针为“0”。要求运行时间——假设进程需要运行的...

2019-04-17 20:48:53 799

原创 linux代码对齐快捷键和man帮助文档的使用总结

自动对齐:(gg=G)在命令模式下(即非“插入”等编辑模式),先输入gg,这时候光标会移动到第一行第一个字符,然后按 “=” 号之后切换成大写,再按一下G,这时候光标会移到最后一行的第一个字符,这时候就可以看到代码被排得整整齐齐了!“gg"将光标移动到代码首部,”="表示对齐指令,"G"表示代码尾部,所以执行"gg=G"后,该文件的所有代码都将对其....

2019-04-17 19:03:59 3668

原创 Linux 同步理发师问题

熟睡的理发师问题描述的是多个进程(线程)之间的通信与同步问题:有一个理发师的椅子,和n个顾客的椅子如果有顾客在椅子上等,那么理发师为他剪发,否则理发师就在自己的椅子上睡觉。如果理发师在熟睡,那么顾客会叫醒理发师,否则顾客会看有没有空椅子,有的话,他坐下等,否则,他将离开理发店。#include <pthread.h>#include <stdio.h>#i...

2019-04-16 23:42:54 944

原创 Linux读者和写者(写者优先)

写者优先写者优先与读者优先的不同是:如果读者来,有写者等待,但有其他读者正在读,新读者等。使用两个互斥锁mutex_write,mutex_read和两个信号量sem_read,sem_write来确保访问资源的互斥和同步。#include <stdio.h>#include <stdlib.h>#include <pthread.h>#in...

2019-04-16 22:53:29 1425

原创 linux读者和写者(读者优先)

读者优先使用互斥锁来确保同一时间只能一个进程写文件,实现互斥。使用信号量来实现访问资源的同步。首先,写者的代码应该是这样一种形式,才能保证同一时刻只有一个写者修改数据。考虑到写者对读者的影响是:当任何读者想读时,写者都必须被阻塞;并且,读者阻塞了写者并停止阻塞之前,后续的任何写者都会读者优先于执行。这就如同有一个读者队列,当第一个读者入队时,写者完全被阻塞,直到最后一个读者离开队列。...

2019-04-16 22:40:40 1332

原创 页面置换算法学习之FIFO,Optimal,LRU

A.先进先出(FIFO)页面置换算法这是最早出现的置换算法。该算法总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。该算法实现简单,只需把一个进程已调入内存的页面,按先后次序链接成一个队列,并设置一个指针,称为替换指针,使它总是指向最老的页面。但该算法与进程实际运行的规律不相适应,因为在进程中,有些页面经常被访问,比如,含有全局变量、常用函数、例程等的页面,FIFO 算法并不...

2019-04-15 00:13:36 1907 3

原创 linux学习的任督二脉

Linux工程师很多,甚至有很多有多年工作经验,但是对一些关键概念的理解非常模糊,比如不理解CPU、内存资源等的真正分布,具体的工作机制,这使得他们对很多问题的分析都摸不到方向。比如进程的调度延时是多少?Linux能否硬实时?多核下多线程如何执行?系统的内存究竟耗到哪里去了?我写的应用程序究竟耗了多少内存?什么是内存泄漏,如何判定内存是否真的泄漏?CPU速度、内存大小和系统性能的关联究竟是什么?内...

2019-04-14 22:52:27 246

原创 linux ubuntu安装glfw

第一步,下载glfw到地址:www.glfw.org下载glfw source code:glfw-3.2.1.zip解压 unzip glfw-3.2.1.zip -d glfw-3.2.1第二步,编译安装glfw1. 安装依赖库,sudo apt-get build-dep glfwsudo apt-get install cmake xorg-dev libglu1-mesa-...

2019-04-14 16:32:38 5111 1

原创 Linux JSON解析对象实例

json解析对象:a.json{ "name": "中国", "cities": [{ "省份": "江苏", "城市": ["南京", "苏州"], "邮编": 123 }, { "省份": "广东", "城市": ["深圳", "广州"], "邮编": 123 }, { "省份": "湖北", "城市": ["武汉", "宜昌"]...

2019-04-13 20:22:17 795

原创 数据结构之单链表操作(一)

135667

2019-04-13 08:23:54 407

原创 linux pv操作讲解

参考链接:https://www.cnblogs.com/tjulym/p/4977453.html

2019-04-11 16:36:13 1717

原创 常见的内存错误及其对策

1,常见错误及其处理策略:(1) 内存分配未成功,却使用了它。编程新手常犯这种错误,因为他们没有意识到内存分配会不成功。常用解决办法是,在使用内存之前检查指针是否为NULL。如果指针p是函数的参数,那么在函数的入口处用assert(p!=NULL)进行检查。如果是用malloc或new来申请内存,应该用if(p==NULL) 或if(p!=NULL)进行防错处理。(2) 内存分配虽然成功,...

2019-04-09 15:45:44 246

原创 linux 数据库mysql导入导出数据

mysql清屏两种有效方式:方式一:mysql> ! clear //注意clear命令之前要空格;方式二:mysql> ctrl+L //快捷组合键

2019-04-07 23:56:55 228

原创 友善之臂nanoPC T3 Plus s5p6818内核和uboot编译和系统量产总结

方法一:uboot 和 Linux 内核的编译,烧写到系统,打开 wiki:http://wiki.friendlyarm.com/wiki/index.php/NanoPC-T3_Plus/zh下载系统: s5p6818-eflasher-20180811-friendlycore-arm64.img.zip用 win32diskimager 烧写到 sd 卡.1,安装 aarch64-...

2019-04-07 23:11:24 2439 2

原创 linux 数据库sqlite3 导入导出数据

1,Linux导入数据:.separator "," .import /home/tangtao/mynode/linuxnetPrograme/Socket-master/chatroom_select/chatRome.db mydb select * from mydb;

2019-04-07 23:08:46 1930

原创 linux c语言全面学习json解析函数

1,json结构的定义typedef struct cJSON { //cJSON结构体 struct cJSON*next,*prev; /* 遍历数组或对象链的前向或后向链表指针*/ struct cJSON *child; /*数组或对象的孩子节点*/ int type; ...

2019-04-04 17:31:21 1098 2

原创 http请求学习

GET:向Web服务器请求一个文件POST:向Web服务器发送数据让Web服务器进行处理PUT:向Web服务器发送数据并存储在Web服务器内部HEAD:检查一个对象是否存在DELETE:从Web服务器上删除一个文件CONNECT:对通道提供支持TRACE:跟踪到服务器的路径OPTIONS:查询Web服务器的性能1,User-Agent:HTTP客户端运行的浏览器类型的详细信息。通过...

2019-04-02 17:16:55 369 2

原创 linux poll实现简易服务器

#include <stdio.h>#include <stdlib.h>#include <string.h>#include <errno.h>#include <unistd.h>#include <time.h>#include <sys/socket.h>#include <poll....

2019-04-02 14:05:50 248

原创 linux socket C_S编程(UDP)

UDP编程的总结:与之对应的UDP编程步骤要简单许多,分别如下:  UDP编程的服务器端一般步骤是:  1、创建一个socket,用函数socket();  2、设置socket属性,用函数setsockopt();* 可选  3、绑定IP地址、端口等信息到socket上,用函数bind();  4、循环接收数据,用函数recvfrom();  5、关闭网络连接;UDP编程的客户端...

2019-04-02 13:54:20 159

原创 secureCRT实现远程控制linux (ubuntu)

第一步安装secureCRT和secureFX:安装链接:https://download.csdn.net/download/qq_40008325/11036734其次,进入到Ubuntu下,先查看Ubuntu虚拟机的IP配置,通过ifconfig命令查看,可以看到Ubuntu下的IP地址信息。而后,测试SSH Ubuntu上ssh localhost例如:ssh tangtao@l...

2019-04-01 21:58:11 907

原创 linux socket 编程(多进程)

//socket编程提高版--多进程版服务器#include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#include <errno.h>#include <sys/types.h>#include <sys/soc...

2019-04-01 16:18:09 258

原创 linux socket编程(多线程)

1,客户端#include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#include <errno.h>#include <sys/types.h>#include <sys/socket.h>#inclu...

2019-04-01 15:36:05 1434

linux c语言错误处理

linux 常见的错误处理,c语言编程中的细节注意之处。

2019-03-15

linux qt5 数据库mysql编程

利用qt5实现mysql的增删改查和遍历基本操作。

2019-03-14

linux sqlite3库编译安装

sqilte3是c++下的轻量库,现提供sqlite3的库编译文件。

2019-03-13

linux下用qt5计算器实现

学习qt5的入门项目,qt5实现计算器的加减乘除等等功能。

2019-03-13

qt5学习全套代码

qt5学习的好代码,亲测可用,入门学习好资料。

2019-03-12

qt项目学习

qt5的入门项目学习。

2019-03-06

qt学习代码

qt5的学习代码,qt5的学习资源。

2019-03-04

linux下c语言源码实现

C语言学习的源泉,c语言学习资料总结,c语言学习的方法

2019-03-02

哈希表的c语言实现1

哈希表的哈希取余法和链表地址法来实现哈希表的基本操作。。。

2019-03-01

qt5入门编程一键学习

qt5入门的好资料,上手qt5项目学习的必备资源。。。。。。

2019-03-01

qt5编程实战代码

qt5的常用代码实现。

2019-03-01

tensorflow从入门到精通

利用python开发tensorflow,一个好的入门机器学习的资料

2019-03-01

吴恩达深度学习入门

深度学习的源泉,国内深度学习的好资料,入门深度学习的资料

2019-03-01

sqlite3开发所需库

c++下常用的库是sqlite3轻量级库,现提供该库的编译代码。

2019-02-27

利用c++开发游戏商城

建立一个游戏玩家类,玩家武器类,玩家角色类,从而给出玩家角色的一些操作,进而加这些操作的数据跟新显示出来。

2019-02-22

酒店管理系统

利用c语言写一个客户端和服务器,在客户端实现点餐功能,然后更新数据发送给服务器,同时在数据库中保存。

2019-02-22

linux下c语言json解析源码实现

json解析数字,英文字母,数组,字符串和Json对象的c语言实现。

2019-02-22

c++调试方法总结调试秘笈

在开发过程中用到c++一些常见的调试方法的学习和一键总结

2019-02-22

c++算法入门学习

c++条件下写的常见的应用算法学习代码,引用于leetcode

2019-02-15

linux cpu使用率测试

linux 下cpu利用率常见脚本测试说明。

2019-02-13

常用的软件开发工具整理

securecrt,notepad++,winscp,wincap,wireshark,ftp,tftp

2021-11-06

c语言编码规范考试.rar

c/c++华为等大公司的一系列编码规范

2021-05-17

考研日语203历年真题资料

这份资料主要是考研日语203历年真题,以及之前买的押题作文

2020-12-22

linux 应用软件 c/c++ 面试题

linux c/c++ 面试题

2020-12-19

opencv_qt5.zip

linux 下用qt5来调用opencv播放摄像头。

2019-08-19

uvc_v4l2_Qt.zip

linux 下v4l2打开摄像头/dev/video0,通过yuv转rgb后用qt5播放。

2019-08-18

tcp_opencv_jpg.zip

linux下建立socket客户端和服务器,服务器端等待响应,在客户端实现视频采集jpeg并发送到服务器端,而后在服务器端接受后显示。

2019-08-18

Linux c语言实现jpg照片之间的传送

Linux c语言实现jpg照片之间的传送,服务器处于等待状态,客户端运行一次就发送一次照片。

2019-08-14

OpenCV3编程入门123_毛.7z

opencv 学习一键总结。。

2019-06-10

vmware_tool.zip

linux ubuntu 下面 vmware_tools 安装记录。。。。。。

2019-05-14

opencv-3.3.0安装包.7z

ubuntu Linux 下的opencv 3.3安装包

2019-05-13

网络编程学习

linux 实现一些常用的服务器,像ftp,http,wbserver.......

2019-04-02

linux学习代码

linux下学习中经常用到的代码,特此在此处做个总结。

2019-03-27

嵌入式linux 学习

嵌入式linux 开发学习,linux下的uboot,文件系统,驱动介绍。

2019-03-19

svn版本控制学习

svn版本控制学习,svn的开发技巧和开发流程。

2019-03-19

secureRT安装包和secureFX安装包

secureRT安装包和secureFX安装包,上传和下载代码的好工具。

2019-03-19

sourceInsight4.0安装包

sourceInsight4.0安装包,跟踪代码的好工具。

2019-03-19

linux数据库学习

sqlite3的基本学习和了解。

2019-03-19

C语言编码规范学习

了解一下c语言开发过程中遵循的代码规范,开发的规范化问题

2019-03-19

linux学习资料总结

linux 下的一些资料,svn 系统调试gdb,线程进程调试,网络编程。

2019-03-18

空空如也

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

TA关注的人

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