- 博客(12)
- 资源 (12)
- 问答 (1)
- 收藏
- 关注
原创 sqlite windows下创建
SQLite是一款轻型的数据库,是关系型数据库(RDBMS)管理系统,它包含在一个相对小的C库中。源文件:Sqlite官网地址:http://www.sqlite.org/Sqlite3文件下载: 安装:先在C盘建一个文件夹 sqlite3,1.把sqlite-dll-win64-x64-3180000中解压出来的两个文件(sqlite3.d
2017-03-31 21:18:03 1208
原创 C陷阱与缺陷(七)
可移植行缺陷问题(1)参数类型提升的问题,注意取值范围的不同(2)函数的声明方式不同(3)标识符名称的限制,在变量命名时注意与库名专有命名冲突如Malloc 与malloc,new等,而一些库名会采用下划线方式 _malloc, 但也有 __FILE__,因此添加下划线方式也要特别注意。建议用后下划线。(4)整数大小short int long· 早
2017-03-26 17:31:16 278
原创 Qt 下载
QtQt是跨平台的图形开发库,一直以来有唱衰有看好,作为程序员,qt和vs 基本都使用过其一。作为IDE两者都很不错。官方网址: http://www.qt.io/Qt下载步骤第一步点击首页“Download Qt”开始下载项选择--个人开发不共享同意LGPL协议最后点击 “Get started”按钮后,进入开源版页面:
2017-03-26 11:52:02 684
原创 WebSocket 协议使用
WebSocket 协议实现在受控环境中运行不受信任代码的一个客户端到一个从该代码已经选择加入通信的远程主机之间的全双工通信。用于这个的安全模型是通常由 web 浏览器使用的基于来源的安全模型。该协议包括一个打开阶段握手、接着是基本消息帧、TCP之上的分层(layered over TCP)。参考文档:中文版:WebSocket协议中文版.pdf 英文版:the Web
2017-03-25 11:20:58 3220
原创 C陷阱与缺陷(六)
C语言预处理器如预处理指令:DirectiveDescription#defineSubstitutes a preprocessor macro#includeInserts a particular header from another file#errorPr
2017-03-25 10:27:15 415
原创 C陷阱与缺陷(五)
库函数函数库调用系统调用在所有的ANSI C编译器版本中,C库函数是相同的各个操作系统的系统调用是不同的它调用函数库中的一段程序(或函数)它调用系统内核的服务与用户程序相联系是操作系统的一个入口点在用户地址空间执行在内核地址空间执行
2017-03-19 12:17:11 371
原创 结构体函数
(一)函数-指针1、指针函数 指针函数本质是一个函数,函数返回类型是某一类型的指针。 定义格式 :函数类型 * 函数名(参数列表) 例: int * func1 (x, y ) 返回值为整型类型指针的函数
2017-03-18 10:03:04 2720
原创 C陷阱与缺陷(四)--声明与定义2
STATIC 一,static全局变量它只在定义它的源文件内有效,其他源文件无法访问它。二,static局部变量 static局部变量中文名叫静态局部变量。与普通的局部变量区别: 1)位置:静态局部变量被编译器放在全局存储区.data 2)访问权限:静态局部变量只能被其作用域内的变量或函数访问。也就是说虽然它会在程
2017-03-17 22:27:14 254
原创 函数的参数(一)
#include "stdafx.h"#include"stdio.h" void swap1(int x, int y){int temp;temp = x;x = y;y = temp;} void swap2(int *x, int *y){int *temp;temp = x;x = y;y = temp;} vo
2017-03-06 21:15:58 280
原创 C陷阱与缺陷(四)--声明与定义
变量的定义&声明一种是需要建立存储空间的。例如:int a在声明的时候就已经建立了存储空间,也就是我们所说的定义。另一种是不需要建立存储空间的。 例如:extern int a其中变量a是在别的文件中定义的。 告诉编译器,这个名字已经匹配到一块内存上了,别的地方再也不能用它来作为变量名或对象名。声明可以出现多次。 全局变量问题(1)、C/C++中的变量分为全局变量、静态
2017-03-05 12:02:13 324
原创 qsort与bsearch
void swap(const void* a, const void* b, int size){assert(a != NULL && b != NULL);char tmp = 0;int i = 0;while (size > 0) {tmp = *((char*)a + i);*((char*)a + i) = *((char*)b + i);*((cha
2017-03-01 21:08:48 248
转载 VT100控制码进行终端扩展显示
转载:blog.chinaunix.net/uid-20587912-id-405035.htmlAndrew Huang bluedrum@163.com VT100是一个古老的终端定义,后面出现的终端几乎都兼容这种终端。VT100控制码是用来在终端扩展显示的代码。比如果终端上任意坐标用不同的颜色显示字符。有时又称为ANSI Escape Sequence. 所有的VT
2017-03-01 20:10:33 965
MODBUS Messaging on TCP IP Implementation Guide V1.0b
2016-12-11
wince开机自启动
2013-10-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人