自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

iot_hept

思想决定行为,行为决定习惯,习惯决定性格,性格决定命运!

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

原创 Windows程序运行过程

Windows应用程序:WinMain函数(入口函数):1。设计窗口类,注册窗口类;WNDCLASS2。创建窗口,显示及更新窗口;3。消息循环;窗口过程函数(回调函数):WindowProcPS:Dos程序入口函数为main,Windows程序入口为WinMain,都是由系统直接调用。windows程序运行过程#include#in

2014-11-05 11:23:30 1439

原创 函数指针问题,求解答

代码中给函数指针赋值的 语句1、2、3  以及用函数指针调用函数的 语句a、b 运行结果都正确,到底哪个才是正确的呢???#includeint add(int a,int b){ return a+b;}int main(){ int (*p)(int,int); int sum; p = add; //语句1// p = &add; //语句2// p = *a

2014-10-09 09:19:13 1177 6

原创 C语言各种关键字

1、register在函数内定义变量时,默认是 auto 类型,变量存储在内存中,当程序用到该变量时,由控制器发出指令将内存中该变量的值送到运算器,计算结束后再从运算器将数据送到内存。如果一个变量用 register 关键字修饰,编译器则尽可能将该变量存放在CPU的内部寄存器中,这样就不用通过内存寻址来访问变量,可以大大提高访问效率。2、volatilevolatile关键字修饰的变量

2014-09-17 10:35:01 1164 2

原创 位域

#includeunion{ struct{ unsigned char c1:3;//位域操作 unsigned char c2:3; unsigned char c3:2; }s; unsigned char c;}u;int main(){ u.c = 100; printf("%d\n",u.s.c1); printf("%d\n",u.s.c2); pr

2014-09-15 08:52:58 945

原创 高效统计整数中 1 的比特数

输入一个无符号整数,统计该整数中含1的比特数。#includeint numbits(unsigned int n){ int count = 0; while(n>0){ n &= (n-1);//每次操作去掉n中最低位的1 count++; } return count;}int main(){ unsigned int n; scanf("%d",&n);

2014-09-12 10:19:17 1820 4

原创 条件编译

1、ifdef#ifdef XXXXX......#endif如果XXXXX被定义了,则编译上述代码。2、ifndef#ifndef XXXXX......#endif如果XXXXX没有被定义,则编译上述代码。3、if#if XXXXX.....#endif如果XXXXX被定义了,并且值为真,则编译上述代码。4、if define#if define(X

2014-09-12 10:03:11 1039

原创 C语言内存分配

C语言的内存分配主要有5个区域:1、栈区:在执行函数时,函数内的局部变量(不包括static变量)、函数返回值的存储单元在栈区上创建。函数执行结束时这些存储单元自动被释放。栈区内存分配运算内置于处理器的指令集中,效率很高,但分配的内存容量有限。2、堆区:程序在运行的时候用malloc(calloc、realloc等)申请的内存,要由程序员自己负责用free释放内存。3、静态存储区:存放

2014-09-02 19:39:34 1026

原创 结构体,联合体,内存分配

#includestruct a{ char x[6]; int y; char z[6];};struct b{ int y; char x[6]; char z[6];};union c{ char x[6]; int y; char z[6];};int main(){ printf("%d,%d,%d\n",sizeof(struct a),sizeof

2014-09-01 21:38:29 1202

原创 字符串复制

要求:编写一个函数,实现类似strcpy的字符串复制函数。原型定义为 char * mystrcpy(char *dest, char *src)。功能是把src所指向的字符串复制到dest所指的数组中,返回dest指针。(提示:src和dest所指向的区域有可能重叠)。简单版本:char * mystrcpy(char *dest, char *src){ char *p = des

2014-09-01 16:59:27 887

原创 指针,指针,指针。。。

1、指针常量与常量指针int a = 10;int * const p1 = &a;const int * p2 = &a;p1是不可改变地址的常量,即指针常量,但可以对它所指向的内容进行修改。p2是指向常量的指针,即常量指针,它所指向的地址内容是不可修改的,但其本身确实可以修改的。2、指针运算#includeint main(){ int *ip1,*ip2

2014-09-01 16:05:59 2708 2

原创 printf那点事

1、打印内存地址#includeint main(){ int a; printf("%p\n",&a); //%p打印地址,自动加前缀00 printf("0x%x\n",&a); //%x以十六进制打印 return 0;}输出结果:0012FF440x12ff442、printf,sprintf,snprintf原型:int printf

2014-09-01 15:18:35 816

原创 指针取值(*)与自增(++)运算

++(*p) 先取指针指向的内容,然后给内容加1,加1操作当前生效。等价于++*p(*p)++ 先取指针指向的内容,然后给内容加1,加1操作在该语句执行后生效*(p++) p指针加1,加1操作在该语句执行后生效,然后取当前p指针指向的内容。等价于*p++*(++p) p指针加1,加1操作当前生效,然后取当前p指针指向的内容。等价于*++p

2014-09-01 12:18:16 4391 3

原创 中国剩余定理

问题:有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?X = 2 (mod 3); 既 X%3 = 2;X = 3 (mod 5);X = 2 (mod 7);求 X ?答案:三人同行七十希,五树梅花廿一支,七子团圆正半月,除百零五使得知X = ( 2*70 + 3*21 + 2*15 ) % 105;原理解析:其中

2014-06-12 20:46:23 869

原创 Zigbee 概念理解

1、IEEE802.15.4协议IEEE802.15.4工作组致力于无线个人区域网络(wireless personal area network, WPAN)的标准化工作,制定的IEEE802.15.4标准规定了WPAN网络的物理层(PHY)和媒体访问层(MAC)2、ZigBee协议ZigBee协议由ZigBee Alliance制定。ZigBee协议在IEEE802.15.

2014-05-20 21:07:22 1752

原创 单片机模拟 IIC 总线与 EEPROM(AT24C02)通信

数据有效性:起始和终止信号时序:设备地址:写字节时序:读数据时序:函数模拟 IIC 总线 时序:/**************************************//******模拟I2C总线操作函数*************//**************************************///延时函

2014-04-30 21:22:45 1646

原创 阿里汪学长教导我们说。。。

关于未来发展方向

2014-04-26 00:49:55 1497 1

原创 FTP工作原理

在进行文件传输时,FTP的客户端和服务器之间会建立两个连接1.控制连接是客户端和FTP服务器之间传送命令的通道。2.数据连接是客户端和FTP服务器之间传输文件的通道。FTP会话时,客户端首先和FTP 服务器的TCP 21端口建立控制连接,通过这个通道发送命令。FTP协议中,控制连接均有客户端发起,而数据连接有两种工作方式:PORT方式和PASV方式PORT模式(主动方式)当

2014-04-10 18:59:05 1279

原创 Ubuntu 12.04 LTS 使用笔记

1)设置root密码:        $sudo passwd root          先输入用户密码,然后设置root密码。2》64位系统要使用32位的软件,需要安装一个库:        $sudo apt-get install ia32-libs3)编译安装Qt:以 qt-x11-opensource-src-4.3.2.tar.gz 为例            $ tar

2014-03-12 20:17:12 1069

原创 嵌入式Linux系统开发环境搭建流程

宿主机:Host ,嵌入式Linux内核编译,应用程序编译的平台,由Linux服务器承担工作站:用以支持小组项目开发,可选择Windows或Linux平台(个人单独开发时,为节省成本可与宿主机为同一台计算机)环境搭建流程:1、将目标板通过串口与工作站进行物理连接(对于USB接口,需要USB/COM转换)2、在工作站上安装串口调试软件Windows环境下:1)超级终端(开

2014-03-05 19:45:36 2601

原创 嵌入式系统组成

Boot Loader 是操作系统内核运行前的一段程序,用于完成硬件设备的初始化,加载内核,为最终调用系统内核做准备

2014-03-05 19:26:33 1137

原创 fedora 系统安装后常用设置

#表示root命令  $表示普通用户命令给普通用户添加sudu权限#visudo    (编辑/etc/sudoers文件的命令)root all = (all) allusername all = (all) all              #第一行为默认的,第二为自行添加内容,username为自己的账户名添加第三方源网易:http://mirrors.1

2013-10-31 20:28:29 855

原创 Windows 通过 Xrdp 远程连接 Fedora

Linux端安装 xrdp 服务器和启动[root@s ~]# yum install xrdp[root@s ~]# service xrdp start[root@s ~]# netstat -tnlp | grep xrdptcp 0 0 127.0.0.1:3350 0.0.0.0:*

2013-10-14 12:56:05 3617

原创 hello,多线程。

#include #include //声明线程入口函数原型DWORD WINAPI Fun1Proc( LPVOID lpParameter);DWORD WINAPI Fun2Proc( LPVOID lpParameter);int tickets = 100;HANDLE hMutex;void main(){ hMutex = CreateMute

2013-07-20 17:41:14 943

原创 基于UDP的 C/S模式 网络应用程序

服务器端代码:#include#includevoid main(){ //加载Windows Socket库 WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequested = MAKEWORD( 1, 1 ); err = WSAStartup( wVersionRequested, &ws

2013-07-20 08:44:07 2125

原创 基于TCP的 C/S模式 网络应用程序

服务器端代码:#include#includevoid main(){ //加载Windows Socket库 WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequested = MAKEWORD( 1, 1 ); err = WSAStartup( wVersionRequested, &ws

2013-07-20 08:38:40 3051

原创 网络体系结构

2013-07-19 17:27:13 1146

原创 What is Embedded

2013-06-16 09:39:02 1028

原创 hdu 1358 KMP

http://acm.hdu.edu.cn/showproblem.php?pid=1358题目大意:给出一个长度为 n 的字符串,求该字符串的循环前缀的长度,和循环次数;示例:abababab前4个字符,循环字串为ab,有2个循环周期 ab|ab前6个字符,循环字串为ab,有3个循环周期 ab|ab|ab前8个字符,循环字串为ab,有4个循环周期 ab|ab|ab|ab输

2013-05-27 07:35:55 904 1

原创 poj 1151 离散化

http://poj.org/problem?id=1151题目大意:给出 n 个矩形的“左下”和“右上”顶点坐标,求面积并;思路:由于坐标值为实数,所以不能直接用数组模拟,要先将所有坐标值离散化处理;#include#include#include#include#includeusing namespace std;#define SIZE 103<<1doubl

2013-05-25 10:07:48 955

原创 hdu 1166 线段树

http://acm.hdu.edu.cn/showproblem.php?pid=1166题目大意:T组测试,每组测试有N个工兵营,给出每个工兵营初始士兵人数。接下来有各种操作:Add i j     i和j为正整数,表示第i个营地增加j个人(j不超过30)Sub i j       i和j为正整数,表示第i个营地减少j个人(j不超过30);Query i j   i和j为正整数

2013-05-15 09:49:06 754

原创 hdu 4217 线段树

http://acm.hdu.edu.cn/showproblem.php?pid=4217题目大意: t 组测试,每组测试有 n 个数(1~n),有 k 次循环,每次取出第k小的数,求所有取出的数字之和。#include#include#include#include#include#define SIZE 262145using namespace std;int

2013-05-14 09:36:35 752

原创 二分搜索+DFS

http://acm.nyist.net/JudgeOnline/problem.php?pid=306题目大意:给一个 n*n 的迷宫,迷宫每一格有一个整数表示该点的难度值,求从(1,1)到(n,n)的所用路径中,难度差最小是多少。#include#include#define N 101#define INF 0x7fffffffint map[N][N],visi

2013-05-13 09:50:46 880

原创 hdu 2579 BFS

http://acm.hdu.edu.cn/showproblem.php?pid=2579题目大意:给定 r * c 的迷宫,还有一个整数 k 。迷宫中“.”表示可以走,“#”表示墙,当时间为k的倍数时,这些墙会消失。求从起点“Y”到终点“G”的最短时间。(人不能呆在一点不动)。#include#include#include#include#include#include

2013-05-10 07:58:42 1180

原创 hdu 2682 最小生成树

http://acm.hdu.edu.cn/showproblem.php?pid=2682题目大意:T组测试实例,每组实例有n个城市,每个城市有一个幸福指数V;如果 Va 或 Vb 或 Va+Vb 是素数的话,两个城市可以连接起来;将两个城市连接起来所需的花费为min(min(Va,Vb),|Va-Vb|);如果所有的城市都能连接起来的话输出最小花费,否则输出“-1”;#includ

2013-05-09 08:00:48 1081

原创 hdu 2491 贪心

http://acm.hdu.edu.cn/showproblem.php?pid=2491题目大意:一个牧师要主持n个婚礼,牧师参加每个婚礼的时间要大于婚礼总时间的一半,给出每个婚礼的起止时间,问能否安排牧师主持每一个婚礼。思路:贪心思想。按每个婚礼的中间时间(即牧师离开该婚礼的最早时间)升序排序。如果中间时间相等,按开始时间升序排序。然后依次安排即可。#include#inc

2013-05-08 08:13:24 909

原创 hdu 2955 (0-1背包变形)

http://acm.hdu.edu.cn/showproblem.php?pid=2955题目大意:劫匪抢银行,要求被抓概率小于P。共有n个银行,第i个银行钱数为m[i],被抓概率为p[i](float型);求劫匪最多能抢多少钱;思路:由于代价(被抓概率)是浮点型且不能直接相加,所以不能以代价为背包。这个题目可以以获得的价值(即抢到的钱数)为背包,求抢到一定钱时逃跑的概率;虽然抢到的钱数

2013-05-06 07:55:23 825

原创 筛选法求素数

原理:大于 1 的任意一个自然数的倍数(大于1)一定不是素数;从2开始升序遍历,找到一个素数就将它的倍数标记为合数,当一个数是合数时它的倍数已经被标记过,可以直接跳过;#include#define SIZE_N 1000int prime[SIZE_N];int main(){ int i,j,temp; for(i=0;i<SIZE_N;i++) prime[i]=1;

2013-05-05 13:42:29 761

原创 C++ string类

http://acm.nyist.net/JudgeOnline/problem.php?pid=308题目大意:用n个字符串,对每个字符串找出最长的一个子串,子串的逆序序列也要包含在原字符串中;#include#include //用string类要包含头文件;(*.h是c的头文件)#includeusing namespace std;int main(void){

2013-05-04 08:26:59 914

原创 hdu 2444 二分图判定+最大匹配

http://acm.hdu.edu.cn/showproblem.php?pid=2444题目大意:有n个人之间有m对互相认识,问能否将所有人分成两组,同一组的任意两人互不认识。若不能分组输出“No”,若能分组计算并输出有最多有多少对人互相认识;思路:先用DFS进行染色,判断能否分成两组组(即能否构成二分图),如果可以求二分图的最大匹配;#include#include#in

2013-05-03 08:11:21 1232

原创 hdu 1867 KMP

http://acm.hdu.edu.cn/showproblem.php?pid=1867题目大意,给定两个字符串,若一个字串的前缀是另一个字串的后缀,则可以合并。要求合并后的字串首先要尽可能短,然后要按字典序尽可能的短;思路:两个字串按先后顺序不同可以有两种组合,对与每种组合得到KMP算法的next数组,next[len]就是两个字串可以合并的长度;#include#incl

2013-05-02 08:06:38 992

UNIX环境高级编程(中文第三版,带目录).pdf

UNIX环境高级编程(中文第三版,带目录).pdf UNIX环境高级编程(中文第三版,带目录).pdf

2018-06-20

MySQL参考手册

MySQL 5.1 官方简体中文参考手册,chm格式,献给为了LAMP 而付出的人们!

2013-06-26

Mbrfix系统主引导修复工具

方便好用的MBR修复工具,多系统卸载时的好帮手。

2013-04-29

空空如也

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

TA关注的人

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