
C/C++/C#
文章平均质量分 83
海2100
这个作者很懒,什么都没留下…
展开
-
Linux下键盘键值对应input event下的code值表
最近做了gpio按键和USB键盘的工作,获取了按键code值。但不是很清楚键值对应的字符;查找内核源码,在kernel/include/uapi/linux/input.h文件中找到;对应如下:/* * The event structure itself */struct input_event { struct timeval time; __u16 type; ...转载 2018-09-04 10:52:38 · 3195 阅读 · 0 评论 -
C#播放声音【六种方法】
C#中声音的播放主要有六种方法:1.播放系统事件声音 2.使用SoundPlayer3.使用API函数播放4.使用axWindowsMediaPlayer的COM组件来播放5.Microsoft speech object Library6.使用directX1.播放系统事件声音 System.Media.SystemSounds.Asterisk.Play(); System.Media.Sys...转载 2018-07-05 11:09:12 · 10085 阅读 · 0 评论 -
队列的图文解析 和 对应3种语言的实现(C/C++/Java)
转自:http://www.cnblogs.com/skywang12345/p/3562279.html概要本章和介绍"栈"时的流程一样,先对队列进行介绍,然后分别给出队列的C、C++和Java三种语言的实现。内容包括:1. 队列的介绍2. 队列的C实现3. 队列的C++实现4. 队列的Java实现转载请注明出处:http://www.cnblogs.com/skywang1...转载 2018-07-23 13:18:34 · 227 阅读 · 0 评论 -
Mini-XML在海思芯片上移植
1、在https://github.com/michaelrsweet/mxml/releases 下载mxml-2.11.tar.gz2、创建一个文件夹mxml,用来编存放和编译mxml-2.111、创建一个文件夹,用来存放库文件及测试代码# mkdir mxml2、到官方网站http://www.minixml.org/software.php下载libmxml库文件,并将其解压到该目录下。我...原创 2018-07-11 15:59:46 · 524 阅读 · 0 评论 -
C/C++log日志库比较
事实上,在C的世界里面没有特别好的日志函数库(就像JAVA里面的的log4j,或者C++的log4cxx)。C程序员都喜欢用自己的轮子。printf就是个挺好的轮子,但没办法通过配置改变日志的格式或者输出文件。syslog是个系统级别的轮子,不过速度慢,而且功能比较单调。尝试了几种C/C++ log库,简单记录如下:1 log4j的衍生品日志是应用软件中不可缺少的部分,Apache的开...原创 2018-07-17 09:08:54 · 610 阅读 · 0 评论 -
linux 程序输出信息颜色控制使用ascii code
1、ascii code 是对颜色调用的格式\033[ ; m …… \033[0m例如:printf("\033[46;31m[%s:%d]\033[0m "#fmt" errno=%d, %m\r\n",__func__, __LINE__, ##args, errno, errno);上面printf时在Linux命令行下打印出带颜色的字体,方便一眼区分不同种类的调试信息,只需要加上一些颜色...原创 2018-07-10 16:40:38 · 1595 阅读 · 0 评论 -
CGIC库的移植及使用2.07
CGIC库的移植 CGIC是一个支持CGI开发的开放源码的标准C库,可以免费使用,只需要在开发的站点和程序文档中有个公开声明即可,表明程序使用了CGIC库,用户也可以购买商业授权而无需公开声明。 CGIC能够提供以下功能: 1 分析数据,并自动校正一些有缺陷的浏览器发来的数据; 2 透明接收用GET或 POST方法发来的From数据; 3 能...转载 2018-07-16 18:20:51 · 765 阅读 · 0 评论 -
cgi详解
最早的Web服务器简单地响应浏览器发来的HTTP请求,并将存储在服务器上的HTML文件返回给浏览器,也就是静态html。事物总是不断发展,网站也越来越复杂,所以出现动态技术。但是服务器并不能直接运行 php,asp这样的文件,自己不能做,外包给别人吧,但是要与第三做个约定,我给你什么,然后你给我什么,就是握把请求参数发送给你,然后我接收你的处理结果给客户端。那这个约定就是 common gatew...转载 2018-07-16 15:51:29 · 706 阅读 · 0 评论 -
在windows10上安装mysql详细图文教程
这篇文章主要介绍了在windows10上安装mysql详细图文教程,本文介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起看看吧环境:windwos 10(1511) 64bit、mysql 5.7.14一、下载mysql1. 在浏览器里打开mysql的官网http://www.mysql.com/2. 进入页面顶部的"Downloads"3. 打开页面底部的“Community(GPL) Dow...转载 2018-06-28 13:17:09 · 1529 阅读 · 0 评论 -
日志级别的选择:Debug、Info、Warn、Error还是Fatal
软件中总免不了要使用诸如 Log4net, Log4j, Tracer 等东东来写日志,不管用什么,这些东东大多是大同小异的,一般都提供了这样5个日志级别: × Debug × Info × Warn × Error × Fatal 一个等级比一个高,但是在具体开发中,关于应该如何选择适应的等级,却没有找到好的文章进行说明。记录一下自己的一些看法,以便日...转载 2018-07-10 13:45:41 · 789 阅读 · 0 评论 -
LIVE555再学习 -- Windows 下编译
然后开始下载编译,其中包含,Windows、Linux和交叉编译三种形式。首先来讲Windows下编译参看:Live555研究之一 源代码编译一、下载源码下载:Index of /liveMedia/public参看:LIVE555 Streaming Media选择下载 live555-latest.tar.gz二、文件介绍我的开发环境为 win 10 64位+VS2017将上面下载的 live...转载 2018-06-20 13:51:52 · 316 阅读 · 0 评论 -
VS2015编译与测试Live555和源代码下载
一、源代码的下载:1. 从官网下载最新版本,下载地址:http://www.live555.com/liveMedia/public/,选择live555-latest.tar.gz下载。此时的版本为2018.04.25 下载后解压,可以看到如下文件:下载好源代码后开始编译。编译环境为:win10 64位+Visual Studio 2015二、创建工程1. 新建win32控制...转载 2018-06-20 13:50:34 · 3342 阅读 · 2 评论 -
vmware workstations 12 安装 CentOS7.3 详解
本文基于vmware workstations12进行CentOS7.3安装过程展示,关于vmware workstations安装配置本人这里不再介绍,基本过程相当于windows下安装个软件而已。1、打开vmware workstations,文件->新建虚拟机,出现如下界面,选择“自定义(高级)”选项,下一步继续:2、此步骤默认,下一步继续:3、在出现下面界面,选中“稍后安装操作系统”...转载 2018-06-26 13:09:04 · 1852 阅读 · 0 评论 -
C# 关于控件的z-order(Z轴次序)属性
转自豆丁最近在C#的windows form编程中,涉及到了控件的z-order(Z轴次序)的属性。它来源于三维空间的概念,x和y分别代表屏幕所在平面上的水平坐标和垂直坐标,而z轴则是垂直于屏幕的。在此根据<<Programming Microsoft Window with c#.net>>书籍中的相关内容及自己的理解做一个总结,并实现了一个应用实例,即由按钮和列表控件一...转载 2018-06-19 10:26:54 · 3748 阅读 · 0 评论 -
c#子窗体的上移、下移、置顶和置底的方法
c#子窗体的上移、下移、置顶和置底的方法,涉及到控件的Z轴次序属性。例如,动态生成的子窗体,加入到panel控件中,当第一个加入panel控制集合的index索引值为0。新增加一个窗口,会出现在最上面,index索引值为0,在后面的窗体index索引值为index + 1。使用窗体的SendToBack()、BringToFront()和SetChildIndex()来改变窗口在Z轴上的次序。置顶...原创 2018-06-19 10:24:31 · 4304 阅读 · 0 评论 -
使用waveOut接口在Windows中播放声音
Windows waveOut教程 本教程将帮助您了解如何使用Windows waveOut接口播放数字音频。根据经验,这些接口函数掌握起来有些困难。在本教程中,我们将会建立一个Windows命令行程序来原始数字音频。注意:本教程假设您熟悉C程序及Windows API的使用。理解数字音频的相关知识也是有益的,但不是必须的。教程内容:· 获取...转载 2018-07-06 13:05:22 · 373 阅读 · 0 评论 -
VS下C++网络编程
网络编程1. TCP与UDP的比较TCP是面向连接的,交互双方的进程各自建立一个流式套接字,服务器需要等待客户端向其提出连接申请。一旦接受客户端申请就立刻返回一个新的套接字描述符。通过该描述符调用数据传输函数与客户端进行数据的收发。UDP是面向无连接的,双方建立的是数据报套接字,服务器和客户端在进行传描数据之前不需要进行连接的申请和建立,可以随时向对方发消息。 TCP优点:可靠、稳定缺点:速度慢,...转载 2018-07-06 17:55:39 · 4287 阅读 · 0 评论 -
C++ 采集音频流(PCM裸流)实现录音功能(双缓存版本)
上一次要用到音频已经是好几年前的事情了(毕竟本人是搞图象处理的)。当时写了一篇总结博客,没想到很多人看了,其中还有些在下载的地方和博客中问了些问题,虽然很想作答,但因为实在是忘了所以就没说什么。 最近又有项目要用到录制音频的功能,索性就把之前留下的双缓存坑填了。其实原理跟之前的差不多,最大的不同在于用到了回调函数。另外,本篇的代码基本上是参考这篇博客的,本人只修改了一部分,如有雷同,绝非偶然。 ...转载 2018-07-06 17:57:21 · 1176 阅读 · 0 评论 -
USB-HID鼠标、键盘通讯格式(转) 与本人实际测试结果
USB-HID鼠标、键盘通讯格式(转) 与本人实际测试结果内容为网络转载,如有版权问题请联系删除 USB鼠标键盘协议介绍。 鼠标发送给PC的数据每次4个字节:BYTE1 BYTE2 BYTE3 BYTE4。定义分别是:BYTE1 -- |--bit7: 1 表示 Y 坐标的变化量超出-256~255的范围,0表示没有溢出 |--bit6: ...转载 2018-09-04 10:49:58 · 10972 阅读 · 3 评论 -
Gpm 通用鼠标守护进程
gpm-1.20.1Gpm ( 通用鼠标守护进程 ) 是为控制台下运行的程序提供鼠标支持的服务器。它不仅提供了通用的剪切和粘贴支持,它的库文件还被许多程序( 如 links ) 用来在程序里实现鼠标。它对桌面电脑很有用,尤其是使用 (B)LFS 的安装指导时 - 在两个控制台之间拷贝和粘贴总比手动输入容易些( 也能减少错误 )。介绍 gpm <span style="co...转载 2018-08-24 16:39:48 · 1049 阅读 · 0 评论 -
用C语言在linux下获取鼠标指针的相对位置
1. 关于"/dev/input/mice"相信很多人都用过Linux,也许你发现不管是在X-window下面,还是在Console下面,鼠标都是可以操作的。那么你有没有考虑过这些鼠标都是从哪来的?不错!他们都是从"/dev/input/mice"这个文件里来的。如果你对Linux比较熟,那么你肯定看得出来这是一个设备文件。"mice"就是Linux下面鼠标的设备文件,不管你用的是PS2的还...转载 2018-08-22 15:11:22 · 554 阅读 · 0 评论 -
浅析linux中鼠标数据读取
浅析linux中鼠标数据读取 luther@gliethttp:~$ ll /dev/input/mice crw-rw—- 1 root root 13, 63 2009-07-09 15:54 /dev/input/mice 我们就是去读/dev/input/mice设备节点,源码如下:#include <stdio.h>#include <errno.h>...转载 2018-08-26 15:42:02 · 1088 阅读 · 0 评论 -
提交代码,SVN被锁定,提示:svn is already locked解决方案
今天遇到一个问题,svn 在提交代码的时候出现了svn is already locked,这是什么鬼,svn 没少用,但是这种情况,还是第一次遇到,于是,百度一下,查了一下,做一下个人分享。遇到这种问题的原因有很多,网络慢,磁盘不够,用户取消等等,导致svn代码被锁定;解决方案如下图点击clean up 点击ok即可来看官方对clean up的解释:它的作用就是查找工...转载 2018-08-22 11:33:19 · 8310 阅读 · 0 评论 -
WSAStartUp详细的解释为什么首先调用这个函数
WSAStartup( )这里用通俗的语言解释一下这个函数,就类似于opencv一样,要添加链接库函数,cv.lib等,要添加到附加依赖项,或者通过#pragma comment(lib,”cv.lib“)一样,然后才能包含头文件进行各种函数的调用。当然了,socket编程要调用各种socket函数,但是需要库Ws2_32.lib和头文件Winsock2.h,这里的WSAStartup就是为了...转载 2018-08-03 11:10:46 · 2801 阅读 · 0 评论 -
使用waveOut接口在Windows中播放声音
本教程将教你如何使用Windows waveOut多媒体功能。文中也解释了一些关于如何以数字形式存储音频的知识。我希望本教程是有益的。 Windows waveOut教程 本教程将帮助您了解如何使用Windows waveOut接口播放数字音频。根据经验,这些接口函数掌握起来有些困难。在本教程中,我们将会建立一个Windows命令行程序来原始数字音频。 注意:本教程假设您熟悉C程序及W...转载 2018-08-07 16:15:44 · 319 阅读 · 0 评论 -
C#中精确计时的一点收获
以下所有代码运行环境:Windows 2003, Intel(R) Core(TM) 2 Duo CPU E8400 @ 3.00GHz 2.99GHz,2.96GB内存根据综合网上的一些文章,精确计时主要有以下几种方式1 调用WIN API中的GetTickCount[DllImport("kernel32")]static extern uint GetTickCount()...转载 2018-08-01 17:21:42 · 564 阅读 · 0 评论 -
windows平台时间函数性能比较QueryPerformanceCounter,GetTickCount,ftime,time,GetLocalTime,GetSystemTimeAsFileTim
执行 10000000 次, 耗时 2258,369 微秒 QueryPerformanceCounter 执行 10000000 次, 耗时 26,347 微秒 GetTickCount 执行 10000000 次, 耗时 242,879 微秒 time()c的时间函数 time(time_t) 大概比GetSystemTimeAsFileTime...转载 2018-08-01 16:29:35 · 778 阅读 · 1 评论 -
环形缓冲区的C语言实现
#include #include #include #include #include #define BUFFSIZE 1024 * 1024 #define min(x, y) ((x) < (y) ? (x) : (y)) pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER; struct cycle_b...原创 2018-07-27 13:09:24 · 1037 阅读 · 1 评论 -
事件EVENT与waitforsingleobject的使用
事件EVENT与waitforsingleobject的使用事件event与waitforsingleobject的配合使用,能够解决很多同步问题,也可以在数据达到某个状态时启动另一个线程的执行,如报警。event的几个函数:1、CreateEvent和OpenEvent1 HANDLE WINAPI CreateEvent(2 __in LPSECU...转载 2018-07-30 17:31:18 · 448 阅读 · 0 评论 -
整理MFC中StretchDIBits()函数
函数声明:int StretchDIBits(HDC hdc, int XDest , int YDest , int nDestWidth, int nDestHeight, int XSrc, int Ysrc, int nSrcWidth, int nSrcHeight, CONST VOID *lpBits, CONST BITMAPINFO * lpBitsInfo, UINT iU...转载 2018-07-26 16:57:15 · 1214 阅读 · 0 评论 -
关于GetDC与GetWindowDC
关于GetDC与GetWindowDCGetDc函数:用于获得hWnd参数所指定窗口的客户区域的一个设备环境。所获得的设备环境可以是通用、类或者私有类型,具体由指定窗口的类风格决定。对于通用设备环境,GetDc函数每次获取一个设备环境时都会用默认属性对它进行初始化。该函数获得的类和私有设备环境会与它们最后一次的设置保持一致。当设备环境不再需要时,应该调用ReleaseDC函数将其释放。 ...转载 2018-07-26 10:50:49 · 2165 阅读 · 0 评论 -
QueryPerformanceFrequency 精确获取时间基本介绍
精确获取时间:QueryPerformanceFrequency() - 基本介绍类型:Win32API原型:BOOL QueryPerformanceFrequency(LARGE_INTEGER *lpFrequency);作用:返回硬件支持的高精度计数器的频率。返回值:非零,硬件支持高精度计数器;零,硬件不支持,读取失败。QueryPerformanceFrequen...转载 2018-07-25 15:31:29 · 1595 阅读 · 0 评论 -
波形音频(WAVE)底层接口的学习与使用
在WINDOWS下,音频函数有多种类型,如MCI、多媒体OLE控制、高级音频等,使用方法都比较简单。但如果想编写一个功能较强大的音频处理程序,那就必须使用低级音频函数和多媒体文件I/O来控制音频设备的输入和输出。因为低级音频函数可直接与音频驱动程序交互,通过窗口消息或回调(CALLBACK)函数来管理音频数据块的记录和播放,控制非常灵活。重要的一点是,低级音频函数为我们提供了一个设备无关的接口。 ...转载 2018-07-06 17:59:08 · 2330 阅读 · 0 评论 -
C#怎么设置子窗体在主窗体中居中显示
C#怎么设置子窗体在主窗体中居中显示问题的开始是由C#传传看主群里的印醒提出来的,下面我来说一下解决方案吧其实表面上看是很简单的开始吧,现在有两个窗体Form1主窗体,Form2子窗体而且我相信大部分人都会这样写在子窗体的Load事件中这样写[code=csharp] this.StartPosition = FormStartPosition.CenterParent;[/code]其实这样写是...转载 2018-06-29 14:05:30 · 3178 阅读 · 0 评论 -
MySQL中show语法
1. show tables或show tables from database_name; -- 显示当前数据库中所有表的名称。 2. show databases; -- 显示mysql中所有数据库的名称。 3. show columns from table_name from database_name; 或show columns from database_name.table_nam...转载 2018-06-29 12:59:06 · 206 阅读 · 3 评论 -
VS2015 'sprintf': This function or variable may be unsafe
解决办法:工程->属性->配置属性->C/C++->预处理器->预处理器定义添加以下定义就可以解决:_CRT_SECURE_NO_DEPRECATE原创 2018-01-05 10:45:01 · 6715 阅读 · 0 评论 -
C#调用C/C++ DLL 参数传递和回调函数的总结
Int型传入:Dll端:extern "C" __declspec(dllexport) int Add(int a, int b){ return a+b;}C#端:[DllImport("aeClient2.0.dll", CallingConvention =CallingConvention.Cdecl)]转载 2017-12-29 15:01:25 · 8632 阅读 · 1 评论 -
C#调用C++编写的DLL函数, 以及各种类型的参数传递
C#调用C++编写的DLL函数, 以及各种类型的参数传递 1. 如果函数只有传入参数,比如:C/C++ Code Copy Code To Clipboard//C++中的输出函数int __declspec(dllexport) test(const int N){return N+10;}对应的C#代码为:C# Code Copy Co转载 2017-12-29 14:43:26 · 1460 阅读 · 0 评论 -
C#调用DLL各种传参
C#调用DLL各种传参12345678910111213141516C++#define JNAAPI extern "C" __declspec(dllexport) // C方式导出函数转载 2017-12-29 11:43:18 · 1906 阅读 · 1 评论 -
使用Signature Tool自动生成P/Invoke调用Windows API的C#函数声明
在网上看到很多网友在.NET程序中调用Win32 API,或者调用自己的VC DLL里面提供的函数的时候,总是被生成正确的C函数在C#中的正确声明而困扰,而生成C++中结构体在C#中的声明 - 天,没有什么比这个更让人恶心的事情了。因为:1. 如果你的结构体里面包含 TCHAR字符串成员的话,需要考虑ANSI和Unicode DLL的情形。2. 如果你的结构转载 2017-12-29 11:41:38 · 196 阅读 · 0 评论