自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C语言运算符优先级 详细列表

运算符的优先级:C语言中,运算符的运算优先级共分为15 级。1 级最高,15级最低。在表达式中,优先级较高的先于优先级较低的进行运算。而在一个运算量两侧的运算符优先级相同时,则按运算符的结合性所规定的结合方向处理。运算符的结合性:C语言中各运算符的结合性分为两种,即左结合性(自左至右)和右结合性(自右至左)。例如算术运算符的结合性是自左至右,即先左后右。如有表达式x-y+z 则y 应先与

2014-11-24 21:47:50 5741

原创 VirtualBox安装虚拟机Ubuntu

目录安装安装VirtualBox虚拟机安装Ubuntu操作系统_AllardZhao的博客-CSDN博客_virtualbox安装ubuntu

2021-09-30 16:36:26 155

原创 头文件解析

目录c源文件中要包含自己的头文件c源文件中要包含自己的头文件c源文件中要包含自己的头文件_一只小菜鸟-CSDN博客

2021-09-29 10:30:04 146

原创 系统函数使用

目录sprintfsprintffor (i = 0; i < 17; i++) { sprintf(buffer+i*3, "%02X ", hex[i]);//itoa}以上代码每次都会写入4个字节如i=0时,hex[0]hex[1]空格\0; \0为编译器自动添加的,故最后会有内存访问越界问题。...

2021-09-28 12:59:27 150

转载 编译链接加载

Linux下静态库_库的基本概念;如何生成静态库动态库;nm查看库中包含那些函数、ar生成静态库,查看库中包_shindow_新浪博客

2021-09-10 14:44:28 99

原创 TCP/UDP传输

目录TCP粘包/拆包TCP粘包/拆包https://www.cnblogs.com/yaochunhui/p/14175396.html

2021-08-24 09:55:34 64

原创 Git使用

目录git rebasegit rebasegit rebase相比于git merge,能保证分支主线很清晰。https://blog.csdn.net/hudashi/article/details/7664631

2021-08-23 20:44:06 65

原创 数组

#一维数组#二维数组#字符数组

2021-05-09 20:16:07 67

原创 常用指令

查找文件并删除find ./ -name *.o | xargs rm -rf

2018-01-17 14:53:20 234

原创 简介

基本概念注意事项语句结尾不需要分号;普通变量变量不需要定义,而是直接使用,所有没有类型的说法,参与整数运算就是整数,参数字符串运算就是字符串; 没有浮点数; 赋值=号左右不能有空格; 使用时格式为var,但次为简化版,在复杂情况下要使用var,但次为简化版,在复杂情况下要使用{var}; 在使用时需要$var格式,但是在赋值和for循环语句头中不需要; 整数和字符串的比

2017-05-18 16:52:26 300

原创 概要

语言机器只识别1和0,后来的汇编和高级语言都需要编译成1和0给机器,所以真正发展的是编译器。编程语言层次:汇编->c->c++->java/c#->vb->php。进制进制的本质是计数;各个进制都是完美的,把进制运算都换算成十进制是本末倒置的,只需要各个进制的加法和乘法表即可运算,如十进制加法表和乘法表。二进制的简写是十六进制,如UE工具即可执行文件的二进制数显示为十六进制

2017-05-17 21:29:12 314

转载 shell ' ', " " 和 `` 的区别

今天学习一个bash脚本,看到有一条:bin=`dirname "$0"`(dirname filename是输出该文件所在的目录,$0是该bash文件的文件名,在bash中一般使用cd `dirname $0`进入该脚本所在的目录中)我尝试着cat $bin输出是:.然后我将反引号``去掉:bin=dirname "$0"在运行cat $bin后报错。

2017-05-17 21:17:08 4735

转载 awk文本分析

简介awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。awk其名称得自于它的创始人 Alfr

2017-05-17 21:12:46 461

转载 java中编码详解

原文地址:http://blog.csdn.net/llwan/article/details/7567906做JAVA经常会碰到中文乱码问题,还有各种编码的问题,特别是String类的内容需要重新编码的问题。要解决这些问题,必须了解清楚JAVA对于字符串是怎么处理的。1. “字符”是由数字来表示的先来重新了解一下计算机是如何处理“字符”的,这个原理是大家必须记

2017-04-25 19:49:14 336

转载 基于Udp的永远在线业务传输心跳数据包的方法

专利名称基于Udp的永远在线业务传输心跳数据包的方法及设备的制作方法技术领域本发明涉及通信领域,尤其涉及一种基于用户数据包协议(User DatagramProtocol, UDP)的永远在线业务(Always Online)下的传输心跳数据包的方法及设备。背景技术诸如手机等移动终端作为一种被广泛使用的便携通信设备,已经成为人们生活、工作中必不可少的沟通工具。近年来,随着移动互联网络的发展

2017-03-27 21:58:45 2448

原创 eclipse使用

windows中使用linux中使用

2017-03-15 14:25:47 252

转载 Linux 上分析死锁的简单方法--gdb+pstack

简介死锁 (deallocks): 是指两个或两个以上的进程(线程)在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程(线程)称为死锁进程(线程)。 由于资源占用是互斥的,当某个进程提出申请资源后,使得有关进程(线程)在无外力协助下,永远分配不到必需的资源而无法继续运行,这就产生了一种特殊

2017-02-21 16:41:30 8414

转载 使用getopt_long()从命令行获取参数,struct option

本文来自:http://blog.csdn.net/yui/article/details/5669922众所周知,C程序的主函数有两个参数,其中,第一个参数是整型,可以获得包括程序名字的参数个数,第二个参数是字符数组指针或字符指针的指针,可以按顺序获得命令行上各个字符串参数。其原形是:int main(int argc, char *argv[]);或者int main(in

2017-02-06 14:12:22 5651

转载 内核链表操作解析

linux内核之链表操作解析本文只是对linux内核中的链表进行分析。内核版本是linux-2.6.32.63。文件在:linux内核/linux-2.6.32.63/include/linux/list.h。本文对list.h文件进行简要分析,有必要的地方还会以图进行说明。代码分析链表结构体:有前驱和后继,说明是双链表struct list_hea

2017-01-09 16:41:47 299

转载 链表

常用链表和内核链表的区别常用链表结构通常链表数据结构至少应包含两个域:数据域和指针域,数据域用于存储数据,指针域用于建立与下一个节点的联系。按照指针域的组织以及各个节点之间的联系形式,链表又可以分为单链表、双链表、循环链表等多种类型,下面分别给出这几类常见链表类型的示意图:内核链表结构链表数据结构的定义很简单(节选自[include/

2017-01-09 16:40:15 212

原创 socket通信之心跳

场景在TCP长连接通信时一般会使用心跳机制;原因心跳是用于判断是否掉线的. 只要连着的时候就会持续每隔一小会发一个心跳包,服务器如果多久没收到就判断你已经掉线了. 之所以需要心跳包而不直接判断socket的联通状态,是因为在网络上有大量的连接缓存设备(比如电信局的交换机,比如一些硬件防火墙),这些设备会保存连接一段时间(几秒到十几分钟都有)举个例子 A客户端连接着B服务器 实际上是

2016-12-27 14:08:55 4579

转载 单例模式

定义一个类只能创建一个实例,如人任务管理器,正在打印的任务等.Singleton 模式是设计模式中最为简单、最为常见、最容易实现的.实现typedef int *SINGLETON;   /* 定义自己的类型 */SINGLETON *singleton = NULL;SINGLETON *get_singleton(void){    if (

2016-12-23 10:01:08 235

转载 killall与killall-9

SIGINT SIGTERM SIGKILLctrl+c 发送SIGINTkillall 发送SIGTERM;killall -9 发送SIGKILL;三者都是结束/终止进程运行。1.SIGINT SIGTERM区别前者与字符ctrl+c关联,后者没有任何控制字符关联。前者只能结束前台进程,后者则不是。2.SIGTERM SIGKILL的区别前者可以

2016-11-23 17:51:33 14971

转载 Linux ftp 命令

一、ftp的get命令和mget命令有何不同?get一次只下载一个文件;mget一次可以下载多个文件,而且支持通配符,需要注意的是在mget的时侯,需要对每一个文件都选择y/n,如果想不交互的下载全部的文件,可以先用prompt命令关掉交互方式(关闭:prompt off;打开:prompt on)。二、FTP使用什么命令来定位服务器与本地硬盘的路径?ftp中用lcd切换本地路径,用c

2016-11-23 12:05:25 572

转载 线程池创建原理及实现

本文给出了一个通用的线程池框架,该框架将与线程执行相关的任务进行了高层次的抽象,使之与具体的执行任务无关。另外该线程池具有动态伸缩性,它能根据执行任务的轻重自动调整线程池中线程的数量。文章的最后,我们给出一个简单示例程序,通过该示例程序,我们会发现,通过该线程池框架执行多线程任务是多么的简单。为什么需要线程池目前的大多数网络服务器,包括Web服务器、Email服务器以及数据库服务器等都具有

2016-10-10 11:27:19 1556

原创 gdb远程调试嵌入式程序

嵌入式程序调试一般会选择gdb+gdbserver的方式,因为一般gdb太大,而嵌入式空间较小;     一、下载gdb-7.11.1源代码ftp://sourceware.org/pub/gdb/releases/二、编译 GDB#tar -zxvf gdb-7.11.1.tar.gz2.1、编译GDB Server#cd gdb-7.11.1

2016-09-30 18:02:46 428

原创 c语言基础支持

c语言需要通过编译器翻译为机器语言才能被计算机执行;不同的计算机能够识别的机器语言可能不同,如嵌入式和pc机,此时需要使用不同的编译器去编译。程序设计中有语法错误和逻辑错误;调试 : 找出并纠正逻辑错误的过程;软件维护:周期性的更新逻辑错误,或应应用的要求修改程序;软件工程:设计程序使之易于维护;errnogcc中errno是线程安全的。“ ”和 NULL的

2016-09-22 18:47:35 220

转载 select模型

在Linux中,我们可以使用select函数实现I/O端口的复用,传递给 select函数的参数会告诉内核:      •我们所关心的文件描述符      •对每个描述符,我们所关心的状态。(我们是要想从一个文件描述符中读或者写,还是关注一个描述符中是否出现异常)      •我们要等待多长时间。(我们可以等待无限长的时间,等待固定的一段时间,或者根本就不等待)   从 sel

2016-08-25 16:45:52 326

原创 eclipse开发c/c++程序

eclipse IDE既可以在windows上使用,也可以在linux上使用;开发c/c++程序需要安装CDT插件;import文件后头文件找不到 在linux 上安装eclipse上配置好cdt后,import文件时,当查找头文件时,却出现如下错误提示: unresolved inclusion: 这是c/c++标准库未设置所致。解决方法:

2016-08-12 14:41:23 489

原创 常用指令

修改文件时间 touch file;链接文件 ln -s filename linkname显示文件 head file tail     file cat     file统计文件信息 wc -l -w -c file 详细指令链接   每天一个linux命令(40):wc命令 - peida - 博客园  http://www.cnblogs

2016-08-11 15:10:54 180

原创 数据结构简介

程序设计程序设计 = 数据结构 + 算法。逻辑结构集合结构:数据间没有对应关系;线性结构:数据间一对一的关系;树形结构:数据间一对多的关系;图形结构:数据间多对多的关系;物理结构顺序结构:数据在存储空间连续存储;链式结构:数据在存储空间不连续存储;每一种具体数据存储可以是两种结构的组合,如数组为顺序线性存储;链表为链式顺序存储;

2016-08-10 16:12:42 421

转载 Ubuntu 10.04 网络已禁用的解决

今天直接拔电源导致遇到了Ubuntu 10.04 下出现 "网络已禁用" 的现象. 无论插上网线还是使用无线,网络图标都是一个红叉。后来在网上查到下面的解决方法,成功开启网卡。其原理就是删除原来的网络设置,然后让系统自动重建新的网络设置。这个方法适用于解决网络突然从可用变不可用的情况(多是非正常关机的原因),如果本来网络不可用。那么这个方法不适用。打开终端,输入下面的命令。

2016-07-27 13:52:14 1511

转载 Valgrind使用说明

Valgrind使用说明    Valgrind是运行在Linux上一套基于仿真技术的程序调试和分析工具,是公认的最接近Purify的产品,它包含一个内核——一个软件合成的CPU,和一系列的小工具,每个工具都可以完成一项任务——调试,分析,或测试等。Valgrind可以检测内存泄漏和内存越界,还可以分析cache的使用等,灵活轻巧而又强大。    一 Valgrind概观Valgrin

2016-07-12 09:36:33 4705

转载 为什么使用sigaction而非signal

所以希望能用相同方式处理信号的多次出现,最好用sigaction.信号只出现并处理一次,可以用signal. signal函数每次设置具体的信号处理函数(非SIG_IGN)只能生效一次,每次在进程响应处理信号时,随即将信号处理函数恢复为默认处理方式.所以如果想多次相同方式处理某个信号,通常的做法是,在响应函数开始,再次调用signal设置,如下图:int sig_int(); //My

2016-07-06 12:15:56 2838

转载 线程中解决sigpipe信号问题

有时候线程会出现SIGPIPE错误: (gdb) bt#0  0x00110416 in __kernel_vsyscall ()#1  0x0092f918 in send () from /lib/libpthread.so.0 这是因为在调用socket发送函数send()时,出现的异常错误,可能的原因是因为tcp连接可能不正常,导致了send()数据失败,系统会收到

2016-07-06 12:13:56 3219 1

转载 SVN

转自:http://blog.csdn.net/gexiaobaohelloworld/article/details/77528621,SVN简介SVN(Subversion)是一个自由、开源的项目源代码版本控制工具。目前,绝大多数开源软件和企业代码管理,都使用SVN作为代码版本管理软件。SVN将文件存放在中心版本库里,这个版本库很像一个普通的文件服务器。不同的是,它

2016-07-05 17:48:39 1118

转载 Word2010中如何设置多级编号 把默认标题的样式设置为带有多级编号

Word2010中如何设置多级编号 把默认标题的样式设置为带有多级编号_爱玩_新浪博客  http://blog.sina.com.cn/s/blog_63f0486b01016ji9.html

2016-05-27 16:39:55 5811

转载 typedef的用法

1.简单的函数指针的应用形式1:返回类型(*函数名)(参数表) 1.简单的函数指针的应用[cpp] view plain copy char (*pFun)(int); char glFun(int a){ return;} void main() { pFun = glFun; (*pFu

2016-05-17 19:45:43 1196

原创 编译与链接

在编译时,在动态库和静态库都存在时,默认是链接动态库,但是可以使用 -static强制链接静态库。但此时需要注意,指定后会链接的所有库都是静态库,如: gcc xxx.c -lpthread -static -lm : 此时所有的库包括c库都是静态库。链接静态库时,只会加载进用到的函数,但是编译时的.o,会将所有的函数(不管是否被引用)都加载进可执行文件中。

2016-05-17 19:06:16 364

转载 时间复杂度和空间复杂度

算法的时间复杂度和空间复杂度合称为算法的复杂度。1.时间复杂度(1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或

2016-05-13 18:47:21 212

空空如也

空空如也

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

TA关注的人

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