自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (12)
  • 收藏
  • 关注

转载 IEEE802.11协议基础知识

转自:https://blog.csdn.net/MyArrow/article/details/9306961802.11管理功能–用户接入过程      STA (工作站)启动初始化、开始正式使用、AP 传送数据幀之前,要经过三个阶段才能接入:      (1) 扫描(SCAN)       (2) 认证(Authentication)       (3) 关联(Associ...

2018-08-19 00:15:38 475

原创 Ubuntu不能利用ssh进行远程连接的解决方案及其解决过程中出现的问题

Ubuntu不能利用ssh进行远程连接的解决方案及其解决过程中出现的问题

2015-11-18 15:55:31 4332

原创 用户不在sudoers文件中解决方法以及sudoer文件修改错误后的恢复方法

本文解决了用户不在/etc/sudoers文件中导致用户不能获取root权限的问题以及sudoer文件修改错误后的恢复方法

2015-11-18 15:04:32 9679

原创 getline(),cin.getline(),cin.get()区别

C++中有两个getline函数,这两个函数分别定义在不同的头文件中1、getline()是定义在头文件中,功能是取一行字符串,读到换行符r结束,并且抛弃换行符,如果需要读取字符,则接着下一行读取。       getline(cin,str);第一个参数是输入流对象,第二个参数是字符串对象,该函数将istream参数作为返回值。如while(getline(cin, line))

2015-08-16 20:43:09 842

原创 C++内存管理篇整理

C++内存管理篇整理内存管理是C++最令人切齿痛恨的问题,也是C++最有争议的问题,C++高手从中获得了更好的性能,更大的自由,C++菜鸟的收获则是一遍一遍的检查代码和对C++的痛恨,但内存管理在C++中无处不在,内存泄漏几乎在每个C++程序中都会发生,因此要想成为C++高手,内存管理一关是必须要过的,除非放弃C++,转到Java或者.NET,他们的内存管理基本是自动的,当然你也放弃了自由

2015-08-16 12:14:14 610

转载 TCP/IP协议头部结构体

TCP/IP协议头部结构体(网摘小结)TCP/IP协议头部结构体(转) 网络协议结构体定义// i386 is little_endian.   #ifndef LITTLE_ENDIAN   #define LITTLE_ENDIAN   (1)   //BYTE ORDER   #else   #error Redefine LITTLE_ORD

2015-07-12 17:11:34 693

转载 C++ 常见崩溃问题分析

一、前言从事自动化测试平台开发的编程实践中,遭遇了几个程序崩溃问题,解决它们颇费了不少心思,解决过程中的曲折和彻夜的辗转反侧却历历在目,一直寻思写点东西,为这段难忘的经历留点纪念,总结惨痛的教训带来的经验,以期通过自己的经历为他人和自己带来福祉:写出更高质量的程序; 由于 C 和 C++ 这两种语言血缘非常近,文本亦对 C 编程语言有借鉴作用; 二、C++ 

2015-07-12 10:27:59 741

原创 c++中 类数据成员的定义、声明总结

C++为类中提供类成员的初始化列表类对象的构造顺序是这样的:1.分配内存,调用构造函数时,隐式/显示的初始化各数据成员2.进入构造函数后在构造函数中执行一般计算  1.类里面的任何成员变量在定义时是不能初始化的。  2.一般的数据成员可以在构造函数中初始化。  3.const数据成员必须在构造函数的初始化列表中初始化。  4.static要在类的定义外面初始化。

2015-07-12 10:14:05 2936

原创 C/C++变量命名习惯

C_C++变量命名规则变量命名规则是为了增强代码的可读性和容易维护性。以下为C++必须遵守的变量命名规则: 1、 变量名只能是字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成。2、 第一个字母必须是字母或者下划线开头。3、 不能使用C++关键字来命名变量,以免冲突。4、 变量名区分大小写。 变量命名规则:一、    

2015-07-09 09:02:09 619

转载 C++的内存管理

这篇文章是我在学习高质量C++/C编程指南中的第7章"内存管理"后的一篇笔记,之前我也写过相关的文章指针以及内存分配,但我感觉那篇还不是很好,这篇我很把它更完善一些一.内存的常见分配方式  1. 从静态区分配,一般是全局变量和static类型变量  2.从栈区分配内存,一般是局部的变量,会随着所在函数的结束而自动释放  3.从堆中分配,一般是使用手动分配,使用mallo

2015-07-09 08:55:12 406

转载 Linux 用户和组文件解释(总结)

一、用户文件:/etc/passwd[root@pinfun6 ~]# cat /etc/passwdroot:x:0:0:root:/root:/bin/bash 1 2 3 4 5 6 7 | | | | | | | | | | | | | |--用户默认使用的SHELL | | | | | |

2015-05-17 10:38:36 521

原创 详解 /etc/group

Linux /etc/group文件与/etc/passwd和/etc/shadow文件都是有关于系统管理员对用户和用户组管理时相关的文件,Linux /etc/group文件相对另外两个文件内容相对较少,这里对这一文件进行以下分析。用户组的所有信息都存放在/etc/group文件中将用户分组是Linux系统中对用户进行管理及控制访问权限的一种手段。每个用户都属于某个用户组;一个组

2015-05-17 10:15:22 2064

原创 详解/etc/shadow

Linux中 /etc/shadow文件中的记录行与/etc/passwd中的一一对应,它由 pwconv 命令根据/etc/passwd中的数据自动产生。它的文件格式与/etc/passwd类似,由若干个字段组成,字段之间用“:”隔开,文件的每行是8个冒号分割的9个域,格式如下: username: passwd: lastchg: min: max: warn: inactive: e

2015-05-17 09:52:16 980

转载 详解Linux /etc/passwd文件

在Linux /etc/passwd文件中每个用户都有一个对应的记录行,它记录了这个用户的一些基本属性。系统管理员经常会接触到这个文件的修改以完成对用户的管理工作。这个文件对所有用户都是可读的。但是Linux /etc/passwd文件中都有些什么内容呢?它的内容类似下面的例子:#cat/etc/passwdroot:x:0:0:Superuser:/:daemon:x:1:1

2015-05-17 09:49:27 659

转载 C++中如何修改const变量

一、结论声明:不同于C语言的const变量修改问题(可以通过指针间接修改const变量的值),这里只讨论C++ 里的const。C++ const 修饰符,表示常量,即如果以后保证不会修改则声明为const,否则若要修改,那一开始为什么还要声明为const呢?根据C++标准,对于修改const变量,属于:未定义行为(指行为不可预测的计算机代码),这样一来此行为取决于各种编译

2015-05-04 18:18:51 508

转载 排序算法小结

从以下几个方面来比较排序算法:1. 算法的时间和空间复杂度2. 排序的稳定性3. 算法结构的复杂度4. 参加排序的数据规模排序的稳定性:稳定排序方法: 插入排序、冒泡排序、二路归并排序、基数排序是稳定排序算法;不稳定排序方法: 选择排序、谢尔排序、快速排序、堆积排序是不稳定排序算法。算法复杂度比较: 

2015-04-27 10:21:06 706

转载 C++内联函数与宏定义的区别

用内联取代宏:1.内联函数在运行时可调试,而宏定义不可以;2.编译器会对内联函数的参数类型做安全检查或自动类型转换(同普通函数),而宏定义则不会; 3.内联函数可以访问类的成员变量,宏定义则不能; 4.在类中声明同时定义的成员函数,自动转化为内联函数。文章(一)内联函数与宏定义  在C中,常用预处理语句#define来代替一个函数定义。例如:    #d

2015-04-26 22:04:40 579

转载 海量数据面试题----分而治之/hash映射 + hash统计 + 堆/快速/归并排序

1、从set/map谈到hashtable/hash_map/hash_set   稍后本文第二部分中将多次提到hash_map/hash_set,下面稍稍介绍下这些容器,以作为基础准备。一般来说,STL容器分两种:    序列式容器(vector/list/deque/stack/queue/heap),        关联式容器。关联式容器又分为set(集合)和map(

2015-04-20 16:05:40 900

转载 5亿个数找中位数

找中位数最容易想到的方法就是,先对序列进行排序,取中位数,然而5亿个数要想全部读入内存需要将近2GB空间。一种想法是采用外部排序的方法,在排序的过程中记录数据个数,找到中位数。首先采用hash() % 100,把数据分到100个文件中,然后对每个文件分别在内存中进行快速排序,再将100个小文件进行合并,并在合并过程中寻找中位数,时间复杂度是O(nlogn) 另外一种方法是,

2015-04-20 16:05:03 2773

转载 右左法则----复杂指针解析

首先看看如下一个声明: int* ( *( *fun )( int* ) )[10]; 这是一个会让初学者感到头晕目眩、感到恐惧的函数指针声明。在熟练掌握C/C++的声明语法之前,不学习一定的规则,想理解好这类复杂声明是比较困难的。 C/C++所有复杂的声明结构,都是由各种声明嵌套构成的。如何解读复杂指针声明?右左法则是一个很著名、很有效的方法。不过,右左法则其实并不是C/

2015-04-02 14:45:30 463

原创 两次free()或delete()同一个指针地址会怎么样。

#include "stdafx.h"#includeusing namespace std;int _tmain(int argc, _TCHAR* argv[]){ //cout<<"hello"; //int *p=(int*)malloc(sizeof(int)); //*p=1; //cout<<*p<<endl; //free(p);//free()之后相当于把内

2015-03-27 13:43:07 5618

转载 Linux中的内存管理

前一段时间看了《深入理解Linux内核》对其中的内存管理部分花了不少时间,但是还是有很多问题不是很清楚,最近又花了一些时间复习了一下,在这里记录下自己的理解和对Linux中内存管理的一些看法和认识。我比较喜欢搞清楚一个技术本身的发展历程,简而言之就是这个技术是怎么发展而来的,在这个技术之前存在哪些技术,这些技术有哪些特点,为什么会被目前的技术所取代,而目前的技术又解决了之前的技术所存在的哪

2015-03-17 15:40:48 475

原创 通过DOS窗口编译C++文件总结

用txt文件写一个C++程序,直接将后缀名改为.cpp,然后在DOS窗口中编译一下就变成可运行文件了,但是这个过程中可能会遇到不少问题,一下是具体步骤和问题。用vs2010编译器。1:找到你VS的安装路径,接下来找到VC/bin下一个名为cl.exe的可执行文件,这个就是VC的编译器了(可能是compile简写CL),记住该路径D:\program\vs2010\VC\bin,把这个路径添

2015-03-16 16:35:06 2590

原创 结构体内数据变量内存分配详解

原则1、数据成员对齐规则:结构(struct或联合union)的数据成员,第一个数据成员放在offset为0的地方,以后每个数据成员存储的起始位置要从该成员大小的整数倍开始(比如int在32位机为4字节,则要从4的整数倍地址开始存储)。 原则2、结构体作为成员:如果一个结构里有某些结构体成员,则结构体成员要从其内部最大元素大小的整数倍地址开始存储。(struct a里存有struct b

2015-03-12 09:31:52 2684

原创 C#高性能网络服务器完成端口的实现

C#中利用“完成端口”可实现socket编程的异步通信以及大容量并发等问题。废话少说,直接上代码。MSDN中已有现成的例子,但是其中有一个类未给出。这里全都有了。1,主程序using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Net.Sockets;

2015-02-05 17:17:09 2699 1

原创 C#利用微软企业库Enterprise Library操作mysql数据库

在C#项目中,很多时候到要用到Enterprise Library。这里只是用一个很简单的小例子来演示一下Enterprise Library在VS2010中操作mysql数据库的流程。1,利用Enterprise Library操作mysql数据库。首先要具备一下天剑      (1)项目中要引用MySql.Data和MysroSoft.Practices.EnterpriseLibra

2015-02-05 16:48:21 5427

原创 Apache配置

Apache配置(在文件httpd.conf中修改设置)改变主站点的网页存储位置:查找DocumentRoot与Directory。使之后面的路径一直。改变主站点默认访问文件名:查找DirectoryIndex,改变其后的文件名。修改后保存。需重启服务才可生效。PHP配置(在文件php.ini中修改设置)Register_globals=off添加支持的文件类型 :查找

2015-01-15 16:32:18 458

原创 PHP学习笔记

1,PHP之require()调用文件config.inc的程序代码: ?php   echo "这就是被调用的内容: 您好 ! " ;   ?> 当前脚本example01.php的程序代码: ?php  echo "代码重用的示例: " ;  require ( ' config.inc ' ) ;   //调用另外一个文件config.inc,输出config.

2015-01-11 10:42:06 400

原创 基于apache服务器的网站本地可以访问,局域网内不能访问的问题解决方法

环境:apache服务器基础上搭建的php网站  操作系统window7  问题描述:本地可以用localhost/index.php或者127.0.0.1/index.php访问,但别人用我的ip/index.php访问不了  优先考虑:防火墙问题  解决方法:  1.有安装防火墙的,把防火墙关闭  2.windows默认带防火墙的,进入 控制面板-系统和安全-Windows

2015-01-08 17:50:34 1573

原创 Apache服务无法开启 解决方法(80端口被占用, 解决80端口被Microsoft-HTTPAPI/2.0占用的方法)

无论是单独安装Apache还是安装Wamp.都可能遇到Apache服务无法开启。最大的可能是它所使用的80端口被其他进程占用。iis以及迅雷都是使用80端口的。关闭这些进程一般就可以启动Apache服务了。如果还是不行。那就测试一下80端口的占用情况。很可能出现的情况是:80端口被Microsoft-HTTPAPI/2.0占用。下面介绍了解决这种情况的方法。方法一:VS2010在更

2015-01-08 09:18:04 4876

原创 C# WinForm程序中MySQL数据库操作实例

在winform程序中要操作mysql数据库,首先要引用“using MySql.Data.MySqlClient;”然后按照本文中的代码即可实现最简单的数据库操作private void bt_connect_Click(object sender, EventArgs e) { string ConnString = "server=localh

2014-11-29 22:06:42 3127 1

原创 XML文件操作(如果节点中有多个同名节点,但是每个节点的属性不同)

localhost   sa          jiayuan  读取节点中的一个属性   XmlDocument doc=newXmlDocument();   doc.Load("config.xml");   XmlNodexnuser=doc.SelectSingleNode("userdata");   stringflag=xnuser.

2014-11-15 19:34:42 16825

原创 C# Timer定时器的用法(定时器的终止)

System.Timers.Timer query_interval = new System.Timers.Timer(7000);//查询间隔定时器,实例化Timer类,设置间隔时间为7000毫秒;

2014-11-15 19:22:47 15205 2

原创 外网电脑访问内网linux服务器(设置路由端口映射)

在日常工作中,我们往往遇到这种情况:我们在外网的一个客户端需要远程控制一个内网的linux服务器。要实现合格功能很简单。1,局域网内客户端登陆linux服务器    只需在客户端下载一个putty软件,打开putty后,在Host Name(or IP Address)处输入服务器的名字或者局域网内为服务器分配的IP地址即可(端口号为22,连接类型为SSH)。

2014-11-10 09:44:37 16974

原创 C#中get post提交方式的使用与区别

C# Get Post提交方式使用及C#以Post方式提交XMLget和post是网络开发中的两种提交方式,下面我们详细讲述了他们之间的区别以及如何使用他们。 1.get提交方式(1)get方式通过在网络地址附加参数来完成数据http://www.google.com/webhp?hl=zh-CN 中,前面部分 http://www.google.com/webhp 表示数

2014-11-10 09:40:36 923

原创 cookie的使用

在网络开发中,很多时候我们需要本地的浏览器来记录我们的上网的一些数据。这些数据就用本地的cookie来记载。等下一次这个用户登陆时我们既可以根据本地记录的数据来进行自动登录等操作。cookie的使用很简单。      在基于mvc框架的网络设计中。在控制器中以下面这种形式就可以将一些我们需要存储在本地的信息存储在cookie中:      public ActionResult Sel

2014-11-10 09:39:41 470

原创 移动设备GPS坐标的获取以及向百度坐标的转换

移动设备GPS坐标的获取以及向百度坐标的转换JS文件中定义一下函数,在html页面中调用loadPosition()函数就可直接进行执行。入口函数:functionloadPosition() {    if (navigator.geolocation) {        //alert("HTML5 Geolocation is supported in you

2014-11-10 09:34:31 922

Head First 设计模式(中文版)

Head First 设计模式(中文版)详细描述了设计模式问题,看了之后脑洞大开,值得一看。

2015-10-25

ISO 18000-6标准

第一部分:参考结构和被标准化的参数的定义 第二部分:低于135 kHz 频段短程通讯空间接口的参数 第三部分:13.56 MHz 短程通讯空间接口的参数 第四部分:2.45 GHz 短程通讯空间接口的参数 第六部分:860MHz 至960 MHz 频段短程通讯空间接口的参数 第七部分:433 MHz 有源短程通讯空间接口的参数

2015-10-25

算法艺术与信息学竞赛

很好地书,值得一看,对于进行信息学科竞赛的人来说是一本很好地书。

2015-03-24

算法导论(cn).pdf

主要介绍了一些经典算法,对于算法进行了很好地解析与分析。值得一看的好书。

2015-03-24

数据结构与算法分析:C语言描述

本书对经常用到的数据结构和算法等进行了分析与实现,采用的语言为C语言。

2015-03-24

程序员实用算法

本书描述了很多在实际应用中经常用到的算法的实现。具有很高的使用价值。

2015-03-24

C语言深度解剖

C语言进阶教程。对C语言进行的深度剖析。可加深对C语言的深度理解。

2015-03-24

10部算法经典著作的合集

各种经典算法的高效实现。经典中的经典!必看!

2015-03-24

你必须知道的495个C语言问题

C语言开发者必看,深入不剖析C语言中的改革中问题,

2015-03-24

空空如也

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

TA关注的人

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