![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c/c++编程日记
科技追踪者
IT
展开
-
如何使用c++max函数
如何使用c++max函数原创 2024-01-18 18:22:41 · 435 阅读 · 0 评论 -
G网和C网
C网就是我们常说的CDMA网络,主要是联通公司经营,G网是GSM网,联通和移动均有网络,当然是以移动为主暂时情况是中国联通的C网用户发展不如中国移动的G网,甚至不如联通本身的G网。这主要有以下因素。 首先,个人认为是中国联通CDMA网络建设初期的市场推广策略决策性错误。当初中国联通开始建设CDMA网络的时候,花了几千万美金请迈肯锡为他们做了个市场推广的策略。而迈肯锡给出的答卷转载 2012-08-27 09:25:48 · 3139 阅读 · 0 评论 -
重装vs2005,bug消失!
调了好几天的BUG,记录一下: 我按需求改完代码后跑数据测试,结果TotalDelay字段都为零,这个字段是用结束时间减去开始时间得出来的,可是开始时间和结束时间都有啊,我调啊调,一直认为我改的代码影响到这个字段了,我又更新了之前的版本测试,没问题。更肯定问题出在我改的这部分代码里了,又调了一天,无果。 后来我想起,前两天在家写代码时,懒得插电源,电脑自动关机了,再插电源重启后原创 2012-11-26 18:33:02 · 714 阅读 · 0 评论 -
获得一个比较大的文件大小
在编写代码的时候,遇到一个问题(计算处理文件进度百分比),需要计算出所有文件大小,而每一个文件都是几个G。用下面方法可以实现获取一个文件大小(vs2005):第一步:HANDLE hFile = CreateFile(filename, GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ, NULL, OPEN_EXISTING,原创 2012-11-27 16:33:54 · 872 阅读 · 1 评论 -
[协议分析] IP分片(碎片)重组简单概念
链路层具有最大传输单元MTU这个特性,它限制了数据帧的最大长度,不同的网络类型都有一个上限值。以太网的MTU是1500,可以用 netstat -i 命令查看这个值。如果IP层有数据包要传,而且数据包的长度超过了MTU,那么IP层就要对数据包进行分片(fragmentation)操作,使每一片的长度都小于或等于MTU。我们假设要传输一个UDP数据包,以太网的MTU为1500字节,一般IP首部为20转载 2012-10-09 17:48:55 · 18083 阅读 · 1 评论 -
TCP三次握手、四次分手、状态变化(转)
tcp状态:LISTEN:侦听来自远方的TCP端口的连接请求SYN-SENT:再发送连接请求后等待匹配的连接请求SYN-RECEIVED:再收到和发送一个连接请求后等待对方对连接请求的确认ESTABLISHED:代表一个打开的连接FIN-WAIT-1:等待远程TCP连接中断请求,或先前的连接中断请求的确认FIN-WAIT-2:从远程TCP等待连接原创 2012-07-26 10:15:55 · 2496 阅读 · 0 评论 -
GTP协议循序渐进(三)----通过实例了解TEID
要了解GTP协议,一定要了解GTP协议的作用。 根据它的名字,可以推断出,首先它是一个隧道协议,是在GSN节点之间建立的,用于传递用户数据的payload。这个隧道需要穿越运营商GPRS的骨干网。那既然是这样,GTP协议就应该至少具备以下基本功能: 由于这个隧道是用于传递GPRS的用户数据的,那首先要能够标识出这个隧道是属于哪个用户的,否则,每个用户在上网时都会有自己的GTP-U隧道转载 2012-07-23 16:02:42 · 25623 阅读 · 2 评论 -
IuCS IuPS IuR IuB Uu接口示意图
Iu接口: Iu接口负责核心网(CN)和RNC之间的信令交互。 Iu接口分为IuCS和IuPS,前者将UTRAN的RNC与核心网电路域的MSC相连,后者将UTRAN的RNC与核心网分组域的SGSN相连。 iu-bc接口是广播域的接口。 Iu接口的信令协议称为RANAP(RAN Application Part); Iur接口: Iur接口是两转载 2012-07-23 13:01:15 · 8402 阅读 · 0 评论 -
UTRAN Iub接口介绍
Moakapl Iub接口定义与功能Iub接口是RNC和NodeB之间的逻辑接口。如图1,Iub接口在UMTS网络中的位置与功能与GSM系统中BTS(Base Tranceiver Station)与BSC(Broadwidth Serve Controller )之间的Abis接口类似。图1 Iub接口在UMTS网络中的位置Iub接口的主要功能有:1.转载 2012-07-23 12:20:25 · 3017 阅读 · 0 评论 -
Iu-CS接口
Iu-CS接口分为控制面和用户面两个层面:控制面采用RANAP协议;用户面的控制信令采用ALCAP协议 控制面主要负责用户的移动性管理及呼叫控制;用户面主要负责承载的建立及媒体流的传送 控制面承载在ATM网络的AAL5层协议上;用户面承载在ATM网络的AAL2层协议上 对RANAP协议的处理可以有两种方式:可以使RANAP与ALCAP共享同一条SS7信令链路,则RANAP需转载 2012-07-23 13:43:03 · 3273 阅读 · 0 评论 -
linux统计文件夹某一些文件的大小总和
使用如下命令原创 2014-05-07 16:48:47 · 16639 阅读 · 1 评论 -
shell脚本监控磁盘I/O,cpu,内存
也可把for语句换成while语句。#/bin/shi=1 for((i=1;i date >> cpu.txt top -d 1 -n 1|grep Cpu >> cpu.txt date>>iostat.txt iostat -d -m >> iostat.txt sleep 10done;原创 2014-05-08 16:54:33 · 4176 阅读 · 0 评论 -
mysql对自增id重新从1排序的两种方法
使用mysql时,通常表中会有一个自增的id字段,但当我们想将表中的数据清空重新添加数据时,希望id重新从1开始计数,用以下两种方法均可: 方法一: alter table tablename drop column id;alter table tablename add id mediumint(8) not null primary key auto_in原创 2016-07-28 15:25:52 · 5833 阅读 · 0 评论 -
django 关于 DEBUG = False 影响 admin样式
来自:http://blog.csdn.net/a657941877/article/details/8953233建立自己的静态文件夹修改settings,建立自己的文件夹[html] view plain copy STATIC_ROOT = "/var/www/example.com/static/"原创 2016-07-26 16:52:51 · 3551 阅读 · 0 评论 -
Linux命令行抓包及包解析工具tshark(wireshark)使用实例解析
WEB2.0 » Unix&Linux技术 评论(0)背景:当时有用tcpdump抓包的(https://justwinit.cn/post/6406/),这儿主要是能看到mysql的查询,这个功能不错,特转载。这个还是依赖libpcap的,如下:一、抓Mysql包命令如下:view plainprint?tshark -s 512 -i eth0转载 2015-01-14 10:41:55 · 16489 阅读 · 0 评论 -
linux安装软件时提示找不到镜像的问题:Couldn't resolve host 'mirrorlist.centos.org'
问题:[root@cddserver2 ~]# yum -y install gcc-*Loaded plugins: fastestmirror, prestoCould not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os error was14: PYCURL转载 2015-01-12 14:47:02 · 10825 阅读 · 1 评论 -
编译时,出现ln软连接错误原因及解决方法
ln: creating symbolic link `include/asm' to `asm-arm'错误原因及解决方法 编译linux-2.6.30.4的内核时出现连接错误,错误如下: ......CHK include/linux/version.hmake[1]: Warning: File `include/config/转载 2015-01-12 15:59:14 · 5698 阅读 · 0 评论 -
tshark 分割、合并、过滤 数据包命令
1、把后两个数据包并到一个数据包merge.pcapmergecap -w merge.pcap 1.pcap 2.pcap 2、按照radius条件过滤数据包tshark -r 1.pcap radius -w radius.pcap 3、按照数据包数分割一个大的数据editcap -c 1000000 merge.pcap split01.pca原创 2015-01-06 15:39:43 · 12900 阅读 · 0 评论 -
循环统计目录下某些文件大小
#!/bin/bash# ./test.sh 报表文件目录 HOUR/MIN/DAY/WEEK/MONTHfor file in $(ls $1)doif [ -d $1/$file ] ;then dir="$1/$file/$2" if [ -d $dir ]; then原创 2014-05-10 17:51:47 · 727 阅读 · 0 评论 -
GTP协议中的APN,TEID,NSAPI,TID
一、APNAccess Point Name,接入点名称,在GGSN中用于标识一个指定的外部网络和一种服务的ISP,在SGSN中可根据APN通过DNS域名解析得到与此APN对应的GGSN地址。APN可以分为APN以及wild card APN, wild card APN是指运营商允许用户使用给定的PDP类型的上下文接入任何网络,用“*”表示;常规APN包括两部分:网络标识(NI, Netwo原创 2012-07-19 14:11:11 · 27353 阅读 · 0 评论 -
GetPrivateProfileString
本实例主要实现使用 INI 文件对软件的用户信息进行注册的功能。运行本程序,输入登录名称、登录口令和注册码,单击“注册”按钮进行注册,如果注册成功,则给出提示;如果信息已注册,系统给出提示信息本实例实现时主要用到了系统API函数 GetPrivateProfileString 和WritePrivateProfileString,下面分别对它们进行详细讲解。 (1)GetPriva转载 2012-05-23 13:38:35 · 7937 阅读 · 0 评论 -
shell之“>/dev/null 2>&1”
天在自己的一个技术群中又被问道了这么一个问题,于是又通俗的解释了一下,做个记录,大家看看解释是否清楚!shell中可能经常能看到:>/dev/null 2>&1命令的结果可以通过%>的形式来定义输出分解这个组合:“>/dev/null 2>&1” 为五部分。1:> 代表重定向到哪里,例如:echo "123" > /home/123.txt2:/dev/null 代表空设备原创 2011-12-28 10:39:01 · 567 阅读 · 0 评论 -
TCP段头详解
TCP数据段头的标志位TCP共有六位标志位,分别是:URG、ACK、PSH、RST、SYN和FIN TCP标志位URG: 此标志表示TCP包的紧急指针域(后面马上就要说到)有效,用来保证TCP连接不被中断,并且督促中间层设备要尽快处理这些数据;ACK: 此标志表示应答域有效,就是说前面所说的TCP应答号将会包含在TCP数据包中;有两个取值:0和1,为1的时候表示应答转载 2011-12-15 16:18:56 · 2940 阅读 · 0 评论 -
Linux shell脚本全面学习
1. Linux 脚本编写基础1.1 语法基本介绍1.1.1 开头程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。 当编辑好脚本时,如果要执行该脚本,还必须使其可执行。 要使脚本可执行:编译 chmod转载 2011-12-15 16:37:58 · 451 阅读 · 0 评论 -
Linux打包命令
tartar命令可以用来压缩打包单文件、多个文件、单个目录、多个目录。常用格式:单个文件压缩打包 tar czvf my.tar file1多个文件压缩打包 tar czvf my.tar file1 file2,...单个目录压缩打包 tar czvf my.tar dir1多个目录压缩打包 tar czvf my.tar dir1 dir2原创 2011-12-14 15:03:54 · 514 阅读 · 0 评论 -
C语言中条件编译命令(#if #else #endif)
预处理程序提供了条件编译的功能。 可以按不同的条件去编译不同的程序部分,因而产生不同的目标代码文件。这对于程序的移植和调试是很有用的。条件编译有三种形式,下面分别介绍:1. 第一种形式:#ifdef 标识符程序段1#else程序段2#endif它的功能是,如果标识符已被#define命令定义过则对程序段1进行编译;否则对程序段2进行编译。如果没有程序段2(它为空),本格转载 2011-12-12 11:45:32 · 6072 阅读 · 0 评论 -
cut命令学习
一、定义 正如其名,cut的工作就是“剪”,具体的说就是在文件中负责剪切数据用的。cut是以每一行为一个处理对象的,这种机制和sed是一样的。 2、剪切依据cut命令主要是接受三个定位方法:第一,字节(bytes),用选项-b第二,字符(characters),用选项-c第三,域(fields),用选项-f 例:一,按字节cut:注意:一个空转载 2011-12-07 16:46:41 · 505 阅读 · 0 评论 -
md5sum的使用
MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改。 MD5全称是报文摘要算法(Message-Digest Algorithm5),此算法对任意长度的信息逐位进行计算,产生一个二进制长度为128位(十六进制长度就是32位)的“指纹”(或称“报文摘要”),不同的文件产生相同的报文摘要的可能性是非常非常之小的。在linux或Unix上,md5sum是用来计算和校验文件报文摘要转载 2011-12-07 16:34:22 · 1924 阅读 · 0 评论 -
c语言 access函数
函数名:access功 能:确定文件的访问权限用 法:intaccess(const char*filename,intamode); 头文件:io.h 功 能: 确定文件的访问权限,检查某个文件的存取方式,比如说是只读方式、只写方式等。如果指定的存取方式有效,则函数返回0,否则函数返回-1 用 法: int access(const char *filen原创 2011-12-01 18:02:41 · 2133 阅读 · 1 评论 -
bus error的解决方法
原文来自: http://bavon.bokee.com/5429805.html在x86+Linux上写的程序,在PC机上运行得很好。可是使用ARM的gcc进行交叉编译,再送到DaVinci目标板上运行的时候,出现了Bus error。出现的位置如下(其中Deb转载 2011-10-19 11:52:41 · 4112 阅读 · 0 评论 -
linux教程:Git使用基础篇
Git是一个分布式的版本控制工具,本篇文章从介绍Git开始,重点在于介绍Git的基本命令和使用技巧,让你尝试使用Git的同时,体验到原来一个版本控制工具可以对开发产生如此之多的影响,文章分为两部分,第一部分介绍Git的一些常用命令,其中穿插介绍Git的基本概念和原理,第二篇重点介绍Git的使用技巧,最后会在Git Hub上创建一个开源项目开启你的Git实战之旅 Git是什么 Git在W转载 2012-01-31 16:59:55 · 1507 阅读 · 0 评论 -
结构体对齐
一、什么是对齐,以及为什么要对齐:1. 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定变量的时候经常在特定的内存地址访问,这就需要各类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。 一、字节对齐作用和原因:对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的原创 2012-02-20 22:05:05 · 573 阅读 · 0 评论 -
IP,UDP,TCP,SCTP特性比较
IP,UDP,TCP,SCTP整理总结1. 协议栈:应用层DNS, HTTP, FTP, TELNET, SSH, SIP, H.248/MGACO, DIAMETER, MGCP, M3UA,M2UA,M2PA,SUA…传输层UDPTCPSCTP网络层转载 2012-06-06 16:06:24 · 1535 阅读 · 0 评论 -
条件编译:#pragma pack(n)
在C语言中,结构是一种复合数据类型,其构成元素既可以是基本数据类型(如int、long、float等)的变量,也可以是一些复合数据类型(如数组、结构、联合等)的数据单元。在结构中,编译器为结构的每个成员按其自然对界(alignment)条件分配空间。各个成员按照它们被声明的顺序在内存中顺序存储,第一个成员的地址和整个结构的地址相同。例如,下面的结构各成员空间分配情况:struct test转载 2012-05-16 10:02:07 · 633 阅读 · 0 评论 -
GDB查看变量
在你调试程序时,当程序被停住时,你可以使用print命令(简写命令为p),或是同义命令inspect来查看当前程序的运行数据。print命令的格式是:printprint /是表达式,是你所调试的程序的语言的表达式(GDB可以调试多种编程语言),是输出的格式,比如,如果要把表达式按16进制的格式输出,那么就是/x。一、表达式print和许多GDB的命令一样,可以接受一个表达式,转载 2012-05-15 11:40:16 · 1142 阅读 · 0 评论 -
getopt函数
(一)在Linux中,用命令行执行可执行文件时可能会涉及到给其加入不同的参数的问题,例如:./a.out -a1234 -b432 -c -d程序会根据读取的参数执行相应的操作,在C语言中,这个功能一般是靠getopt()这个函数,结合switch语句来完成的,首先来看下面的代码:#include #include int main(int转载 2012-05-09 15:23:14 · 23619 阅读 · 2 评论 -
getcwd函数
//getcwd//功 能: 取当前工作目录//用 法: char *getcwd(char *buf, int n); #include //#include #define MAXPATH 20char* getcwd(char *buf, int n);int main(void){ char buffer[MAXPATH]; getcwd(b转载 2012-05-10 15:54:21 · 1232 阅读 · 0 评论 -
source insight快捷键
原文来自: 退出程序 : Alt+F4重画屏幕 : Ctrl+Alt+Space完成语法 : Ctrl+E复制一行 : Ctrl+K恰好复制该位置右边的转载 2012-05-09 14:55:39 · 746 阅读 · 0 评论 -
C++中this
C++中的this不像C#里还有其它用途,例如:扩展方法等。我们仅仅来讨论C++中的this。为了加深理解可以先看看MSDN对this提供的帮助信息:1) The this pointer is a pointer accessible only within the nonstatic member functions of aclass, struct, or union type原创 2012-04-16 18:15:37 · 1017 阅读 · 0 评论 -
位置更新
一、位置更新 位置更新属于MM的特定程序。1、位置区的概念为了确认移动台的位置,每个GSM PLMN的覆盖区都被分为许多个位置区,一个位置区可以包含一个或多个小区。网络将存储每个移动台的位置区,并作为将来寻呼该移动台的位置信息。对移动台的寻呼是通过对移动台所在位置区的所有小区中寻呼来实现的。如果MSC容量较大,它就不可能对所控制区域内的所有小区一起进行寻呼,因为这样的寻呼负荷将会转载 2012-04-12 09:44:21 · 7173 阅读 · 0 评论