自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 error LNK2019

IQlog.obj : error LNK2019: unresolved external symbol "class std::basic_string,class std::allocator > __cdecl Trim(class std::basic_string,class std::allocator > &,class std::basic_string<char,struct

2014-06-17 17:01:19 492

原创 GetPrivateProfileStringA 函数

函数原型:GetPrivateProfileString(lpszSection, lpszKey, lpszDefault, lpszReturnBuffer, cchReturnBuffer, lpszFile)

2014-06-12 22:14:32 7210

原创 linux 中的设备文件

设备文件的理解:1.设备文件让程序能够同系统的硬件和外围

2014-06-02 17:06:54 839

原创 struct 中的位域指示操作符“:”

最近在串口API编程,看到DCB 中有{ D

2014-05-02 12:11:36 645

原创 CreateEvent

#include "iostream"#include "windows.h"using namespace std;DWORD WINAPI ThreadProc1(LPVOID lpParam);DWORD WINAPI ThreadProc2(LPVOID lpParam);HANDLE hEvent = NULL;HANDLE hThread1 = NULL;H

2014-04-20 10:47:09 488

原创 atexit 函数

#include #include int exitfun1(void){ printf("Here is exitfun1\n"); return 0; }int exitfun2(void){ printf("Here is exitfun2\n"); return 0; }int main(int argc, char *argv[])

2014-04-19 21:37:53 401

原创 mutex 例子

在网上找了一个mutex的例子,结果看起不明显。修改了下让结

2014-04-19 11:53:41 505

原创 SetConsoleCtrlHandler 函数

再网上找了个SetConsoleCtrlHandler例子。发现按C

2014-04-19 10:05:51 1057

转载 Windows 串口编程例子

本文既写了在Windows中怎样用VC控件MSComm,又说明了API技术编程方法,在写用MSComm控件时,数据类型的转换说得不是太明白,初次涉猎串口编程的朋友恐怕看了还是编不出来;直接从底层编写的部分值得一读,说得较为详细,但你得先从VC教本上看一看什么是线程。目录:一.串行通信的基本原理 二.串口信号线的接法三.16位串口应用程序的简单回顾四.在MFC下的32位串口应用程

2014-04-16 12:44:27 1890

转载 Windows API 串口编程函数介绍

(一)Windows API串口通信编程概述Windows环境下的串口编程与DOS环境下的串口编程有很大不同。Windows环境下的编程的最大特征之一就是设备无关性,它通过设备驱动程序将Windows应用程序同不同的外部设备隔离。Windows封装了Windows的通信机制,这种方式称为通信API,Windows程序可以利用Windows通信API进行编程,不用对硬件直接进行操作。这种体系被称

2014-04-16 12:18:31 6271

转载 AfxBeginThread 和CreateThread具体区别

AfxBeginThread和CreateThread具体区别1. 具体说来,CreateThread这个 函数是windows提供给用户的 API函数,是SDK的标准形式,在使用的过程中要考虑到进程的同步与互斥的关系,进程间的同步互斥等一系列会导致操作系统死锁的因素,用起来比较繁琐一些,初学的人在用到的时候可能会产生不可预料的错误,建议多使用AfxBeginThrea

2014-04-15 23:05:14 633

原创 unsignal char 在cout 下的输出

在学习串口程序中需要设定ByteSize。 由于该字

2014-04-15 21:57:27 731

转载 GetLastError 信息

GetLastErrorGetLastErrorGetLastError返回的值通过在api函数中调用SetLastError或SetLastErrorEx设置。函数  并无必要设置上一次错误信息,所以即使一次GetLastError调用返回的是零值,也不能  担保函数已成功执行。只有在函数调用返回一个错误结果时,这个函数指出的错误结果  才是有效的

2014-04-15 16:10:34 709

转载 Windows API 串口编程

最近在做一个PC机上和ARM机串口通讯的程序。实际上,我并没有在VC上编写过串口程序。记得大一下学期的课程实践上倒是在DOS环境下做个简单的串口通讯,可是就是因为太简单了,而且是DOS那种独占式的进程,所以现在要搬到VC和MFC界面应用程序环境中,难度还是有的,我一时没有头绪。我首先当然想到用ActiveX控件了。曾听说过Microsoft曾做过一个ActiveX控件,用来简化在MFC中进

2014-04-15 13:10:05 558

原创 一个简单的线程例子

对于线程的概念不太清楚,从网上

2014-04-12 11:37:38 399

转载 CreateThread 函数

改变了栈的大小,但是把CreateThread的第2参数改成0x100000或者更小的时候,程序还是会出现这样的问题,只有将栈的大小还原为默认值,且CreateThread的第2参数为0 才能正确运行详细的请查看:http://topic.csdn.net/u/20090905/15/7bf41679-3ed9-40b5-ac71-5f11c088984c.html微软在Windows

2014-04-12 07:45:35 511

原创 char, unsigned char 在c/c++中的不同

char r = -10, *pchar; unsigned char s=-10, rr[10]={1,1,1,1,1,}; int ir = r; int is= s; pchar=&rr; printf("%d,%d\n", ir, is, );同样的代

2014-04-11 20:46:23 2381

原创 two new types may not be defined in a return type

在编译一个小程序验证const

2014-04-08 10:02:15 472

转载 const 修饰成员函数

类的成员函数后面加 const,表明这个函数不会对这个类对象的数据成员(准确地说是非静态数据成员)作任何改变。在设计类的时候,一个原则就是对于不改变数据成员的成员函数都要在后面加 const,而对于改变数据成员的成员函数不能加 const。所以 const 关键字对成员函数的行为作了更加明确的限定:有 const 修饰的成员函数(指 const 放在函数参数表的后面,而不是在函数前面或者参

2014-04-08 09:20:01 439

原创 string' does not name a type 及命名空间

在做c++ primer 中习题时,发现string' does not name a type;#include #include #include string sa[10];int ia[10];using namespace std;int main(int argc, char *argv[]){ string sa2[10];

2014-04-03 16:02:05 6111

转载 linux 启动-shell进程由来

linux创建新进程的过程。系统允许一个进程创建新进程,新进程即为子进程,子进程还可以创建新的子进程,形成进程树结构模型。整个linux系统的所有进程也是一个树形结构。树根是系统自动构造的,即在内核态下执行的0号进程,它是所有进程的祖先。由0号进程创建1号进程(内核态),1号负责执行内核的部分初始化工作及进行系统配置,并创建若干个用于高速缓存和虚拟主存管理的内核线程。随后,1号进程调用exec

2014-04-03 12:54:37 712

原创 string toupper函数

库类string 的成员函数toupper使用:1. 在做编写C++ primer (version 4)时,用到toupper函数时发现直接输出数字 string c ="hi, here0\n"; cout for (int i=0; icout cout system("PAUSE"); return EXIT_SUCCESS;但此时输出结果为数字,2. 查询资料,得

2014-04-02 17:36:04 3403

转载 dll, lib

ib文件是在link的时候用 .dll文件是在Run的时候用lib 是静态链接库 dll 是动态链接库dll你需要和你的程序一起发布才行 lib编译后就不需要了lib将在连接时把一些代码拷贝到你的程序代码里,所以叫做静态连接 dll是程序运行时把dll里的代码和资源加再到进程地址空间去,所以叫动态连接动态链接与静态链接的不同之处在于:动态链接允许可执

2014-03-26 16:35:06 411

原创 什么是I/O流,缓存(zz)

关于流和缓冲区的理解以及一般标准输入问题的解决方法小结先看两个问题(以下程序运行环境为WIN2000+DEV-C++4.9.9.2):吃回车的程序#include #include int main(void){       while(1)       {          char a;          char b;          scanf

2014-03-15 18:10:32 2210

转载 linux 中的用户ID (ZZ)

一、进程与权限A.进程时Linux/Unix操作系统中最重要的抽象之一B.进程是一个处于执行期的程序(目标代码存储在某种介质上)A process is a program(object code stored on some media) in the midst ofexecution.而进程在执行过程中经常涉及到文件访问操作等1.一个运行中

2014-03-14 23:36:53 681

原创 文件访问权限

1. struct stat 成员st_mode定义了文件的类型(普通、目录、字符、块、PIPO)及访问权限2. 所有文件类型都有访问权限3. 每个文件有9个访问权限位,即用户、组、其他对应的执行、可读、可写4.对于目录的读权限和执行权限:读允许我们获得在该目录中所有文件名的列表;可执行让我们可以通过该目录(也是搜索该目录,寻找一个特定的文件名).5. 新建或删除一个目录中的文件需

2014-03-14 23:17:13 537

原创 VC2012 学习记录

1. 安装了VS2012 中文版a. 问题:突然有一天发现不能打开之前的项目及新建VC++项目了原因:.NET Framework 4.5自动更新导至; 解决办法就是还原之前的版本之后OK。             电脑的自动更新关不了,每次用之前都要去删一次Framework4.5。 2. dll 静态调用时发现不能生.lib文档,只有.dll原因: .def文档的后缀是

2014-03-14 15:50:31 500

原创 文件I/O操作之open 的O_APPEND参数

文件I/O操作由系统调用open, write, read, lseek, close实现。其中close最简单,调用格式为close(fd) ----->fd为整型的文件描述符号;open( "filename", O_RDONLY|O_WRONLY|O_RDWR|O_APPEND, mode) ,其中mode为打开文件的权限;当使用了O_APPEND参数后,打开的文件在写入内容追加

2014-01-26 23:44:59 9720

转载 linux openssl基础介绍

转载)( 移植wpa_supplicant时发现要用openssl,了解下SSL)随着计算机网络技术的发展,方便快捷的互连网使人们渐渐习惯了从Web页上收发E-mail、购物和交易,这时Web页面上需要传输重要或敏感的数据,例如用户的银行帐户、密码等,所以网络安全就成为现代计算机网络应用急需解决的问题。现行网上银行和电子商务等大型的网上交易系统普遍采

2014-01-25 11:34:31 468

转载 iwconfig 命令

原文: http://blog.chinaunix.net/uid-22848040-id-1767557.htmlIwconfig命令使用:iwconfig是Linux Wireless Extensions(LWE)的用户层配置工具之一。LWE是Linux下对无线网络配置的工具,包括内核的支持、用户层配置工具和驱动接口的支持三部分。目前很多无线网卡都支持LWE,而且主流的Linux

2014-01-25 00:51:01 759

原创 WIFI 鉴权方式-名词解释

移植RT3070,发现AuthMode 可设定成: "WEPAUTO", "OPEN", "SHARED", "WPAPSK", "WPA2PSK", "WPANONE"查了下这些方式的定义,如下:WEP:Wired Equivalency Protection,一种Wi-Fi连接的安全标准,类似的安全标准还包括下面的WPA,WPA2。它可以使用64/128bit的

2014-01-24 13:56:14 5329

原创 内存地址空间的概念

首先要厘清三种地址(即程序或进程的虚拟和逻辑地址;CPU的线性地址;实际物理地址) a. 虚拟地址:是指同程序产生的,由段选择符和段内偏移地址两个部分组成的地址(对于X86系列就16位的段标识符;32位段内依稀我)

2014-01-21 00:16:53 2291

转载 C 语言编程提升

引用:http://blog.csdn.net/mobidogs/archive/2007/03/04/1520416.aspx注意: 1.这里会尽量搜集所有问题,定时更新,有问题请先查阅这里. 2.为方便查阅,请不要在此问问题,此类贴将被删除,不另通知. 3.希望这里成为大家学习 C 的好帮手.  ◆时钟的驻留程序:http://p

2014-01-19 10:01:29 823

原创 IP 地址地结构 为什么A类 网络ID 1~126

看到TCP/IP内容的疑惑:TCP/IP设计了IP地址,其结构为NetID+HostID,具体结构如下:特点:1. IP地址分成5大类2. 各类地址的最低位有特定要求(A类,最低位1;B 类最低位为10;C类 最低110)3. 网络号不能全为1(广播)或者0(自身)4.主机号有同3各类IP地址网络号的范围如下:我的问题是:1. IP二制进编址是低

2014-01-18 21:57:31 5369 1

转载 以太网帧长度 64 octet

ZZ1.碰撞槽时间假设公共总线媒体长度为S,帧在媒体上的传播速度为0.7C(光速),网络的传输率为R(bps),帧长为L(bps),tPHY为某站的物理层时延; 则有: 碰撞槽时间=2S/0.7C+2tPHY 因为Lmin/R=碰撞槽时间 所以:Lmin =(2S/0.7C+2tPHY )×R Lmin 称为最小帧长度。 碰撞槽时间在以太网中是一个极为重要的参数,有

2014-01-14 11:16:16 1339

原创 omnipeek RT3070

买了D-link DWA 125 WiFi网卡,主要是想将它移植到TQ2440上。其芯片是Ralink (现在是MTK的了) RT3070。之所用买这款是因网上有关此芯片移植的资料较多。拿到无线网卡后做sniffer wifi packets分析,网上查了下,显示omnipeek是支持RT3070的。问题: 直接装D-link自带驱动,无线网卡正常工作,但omnipeek 设置中选ch

2014-01-13 22:31:44 3683 2

原创 srand rand 函数

遇到随机产生函数,之前不解,在此记录下:srand()函数是给rand()随机数种子,在以下面的程序中以time来定种子。其实srand()就是初始化rand()函数,以下是网上查找的资料对rand()初始化的理解1.C的函数库之所以没有把使用系统时钟初始化随机种子这步重要的操作直接放进rand函数的实现中,我觉得至少有三个原因: (1)可以高效产生连续的随机数,不用每

2014-01-13 00:06:21 660

原创 1 IO接口访问方式

1. 程序循环查询方式   消耗CPU特别多;除非是对时间要求极严的应用,否则一般不用2. 中断处理方式在IO控制器或设备发出中断请求时,CPU通过使用中断特向量表(或中断描述符表)来寻址相应的中断处理服务过程的入口地址。因此采用中断控制方式时需要首先设置好中断向量表,并编制好相应的中断处理服务过程。 linux操作系统中大多数设备IO采用此方式3. DMA(以下为转载内容)

2014-01-11 20:29:31 1986

转载 init执行过程

转载移植uboot的目的是启动内核,启动内核的目的是运行应用程序,从内核的启动流程中可以知道内核启动的第一个应用程序就是busybox里的/sbin/init进程!但是我们的最终目的不是启动init进程,而是运行客户的程序!那么init进程是如何选择性的运行客户的程序呢?我们猜测init进程肯定需要:(1) 读取一个配置文件(2) 解析该配置文件(3) 根据配置文件执行

2014-01-11 18:22:23 592

原创 mknod 指令

mknode建立设备文件与mkdir类似。其中重要的可指定设备文件的类型(字符,块)及主、次设备号。mknod console c 5 1console为设备文件名,自己随便取 c是指字符型设备 (可选b,块设备) 5是主设备号 /dev/devices里面记录现有的设备 找个没有用的就可以了 1是次设备号,当你要给两个同样的设备上一个驱动的时候就要分了,从0开

2014-01-09 23:01:59 933

空空如也

空空如也

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

TA关注的人

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