- 博客(562)
- 资源 (24)
- 收藏
- 关注
转载 wchar_t 、UTF-8、UTF-16的转换方法
Unicode 有两套编码集,UCS-2 和 UCS-4。Windows 的内部其实是用的 UCS-2 标准,并用 UTF-16 来实现。而非 Windows 系统大多采用了 UTF-8 实现。 大家都知道在windows上wchar_t是2个字节表示,而在Linux上wchar_t是4个字节表示的。这样写跨平台的程序时,就会不统一。下面是我用到的几个函数,wchar_t与UTF-8编码之间的转换和UTF-16和wchar_t之间的转换。#ifdef WINDOWS#includ...
2022-02-25 15:26:58
2369
转载 字符编码(ucs2 ucs4 utf)
源地址:http://blog.charlee.li/unicode-intro/最近一直在忙点私活,又好久没写blog了,再不写点的话二月份就又要以单篇文章结束了。 前一阵子一直在研究Unicode,索性把研究结果介绍一下吧。可能大家都听说过 Unicode、UCS-2、UTF-8 等等词汇,但它们具体是什么意思, 是什么原理,之间有什么关系,恐怕就很少有人明白了。 下面就分别介绍一下它们。______________________________基本知识介绍Unicode之前,首先
2022-02-22 16:31:09
2246
转载 Linux网络编程:原始套接字 SOCK_RAW, IPV6 rawsocket
https://stackoverflow.com/questions/31419727/how-to-send-modified-ipv6-packet-through-raw-socket比较新的内核才支持 1234567 socket(fd, SOCK_RAW, IPPROTO_UDP); // 指定 TCP/UDP/ICMPint val = 1;ret = setsockopt(test->state.sockfd, IPPROTO
2021-06-04 15:19:55
1606
1
转载 TinyXML中文文档,TinyXPath
TinyXML中文文档,TinyXPathhttp://www.cnblogs.com/flying_bat/archive/2007/11/10/955327.htmlhttp://tinyxpath.sourceforge.net/--------------------------------------------------TinyXML中文文档译注:本文是TinyXML 2.5.2版本Document的中文文档,经原作者Lee Thomason同意由hansen翻译,如有误译
2020-12-08 20:31:38
533
原创 windows 文件描述符 _open_osfhandle
最近我们有一个需求,要求将windows控制台程序中通过printf打印的字符串信息全部重定向到另一个远程控制终端上去;并且也将标准输入也重定向到远程终端。重定向信息的传输用TCP传输。TAG:printf重定向 最近我们有一个需求,要求将windows控制台程序中通过printf打印的字符串信息全部重定向到另一个远程控制终端上去;并且也将标准输入也重定向到远程终端。重定向信息的传输用TCP传输。解决这个问题,其实就是要求能够截获printf的字符数据,使其不在控制台上打印,而是通过s...
2020-11-20 13:46:30
1783
转载 RFC6020 - YANG语言标准中文
RFC6020 - YANG语言标准中文2016年08月05日 14:49:04阅读数:12297YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)该标准脱胎于草案draft-ietf-netmod-yang,该草案从2008年5月开始,先后经历了13个草案版本,最终于2010年8月成为建议标准(Proposed Standard)。本文档的翻译时间开始于2016年5月12日。
2020-10-13 20:26:39
3148
转载 ANSI 控制码
转载:之前一直好奇如何在终端输出不同颜色的文本以及如何任意改变终端光标的位置,今天才知道原来用到了 ANSI 控制码。参考资料:维基百科 Ubuntu手册控制字符控制字符,即 ASCII 控制码。ASCII 码小于 32 的字符都是控制字符。在 ASCII 中常用的控制字符包括:名称 含义 ASCII 码 键盘映射 作用 BEL bell 0x07 Ctrl+G 铃声 BS backspace 0x08 Ctr
2020-10-12 09:57:16
2065
转载 C++11:可变参数的模板
概述在C++11之前,类模板和函数模板只能含有固定数量的模板参数。C++11增强了模板功能,允许模板定义中包含0到任意个模板参数,这就是可变参数模板。可变参数模板和普通模板的语义是一样的,只是写法上稍有区别,声明可变参数模板时需要在typename或class后面带上省略号“…”:template<class ... T> void func(T ... args)//T叫...
2019-07-07 22:27:22
2105
转载 Visual Studio UTF-8 无 BOM 一站式解决办法
一:解决自己源码的编码格式方法A(推荐):工具->扩展和更新->联机->搜索 forceutf8 选择No BOM 的那一个。在你保存文件的时候,这个插件会将文件自动保存为UFT8 无 BOM。方案B:文件-> 高级保存选项->选择 UFT-8 无签名(下拉框最下面倒数几个), 这种方案需要手动对每一个文件处理。二:设定编译器 在编译 链接 时...
2019-04-08 10:13:07
5669
6
转载 Gtest源码剖析:1.实现一个超级简单的测试框架xtest
下面的代码模仿gtest实现,主要说明了以下两点:ASSERT_* 和 EXPECT_*系列断言的原理和作用. gtest是怎样通过宏自动注册测试代码让其自动运行的. 1 #include <iostream> 2 #include <string> 3 #include <memory> 4 #include <vector>...
2019-02-26 09:34:10
598
转载 C++11 中的std::function和std::bind
1. 可调用对象可调用对象有一下几种定义:是一个函数指针,参考 C++ 函数指针和函数类型; 是一个具有operator()成员函数的类的对象; 可被转换成函数指针的类对象; 一个类成员函数指针;C++中可调用对象的虽然都有一个比较统一的操作形式,但是定义方法五花八门,这样就导致使用统一的方式保存可调用对象或者传递可调用对象时,会十分繁琐。C++11中提供了std::functio...
2019-02-26 09:04:34
239
转载 bind原理图释
(原文:http://blog.think-async.com/2010/04/bind-illustrated.html)本文解释了bind 是如何工作的。为了清晰,我对图中的语法作了一些简化(例如,省略函数调用操作符的参数类型),并且简化了 bind 的实现.1. bind 可以用来将用户提供的需要一个参数的函数转换成不需要参数的函数对象。绑定的值(在这个例子中是123)存储在函数对象...
2019-02-26 09:00:18
362
转载 MSVC中C++ UTF8中文编码处理探究
字符编码的问题,上大学那会儿就遇到过,一直都是云里雾里,没太搞清楚。最近又遇到了问题,想在C++的控制台上输出Utf-8编码的汉字字节流。尝试了好多次都是乱码,后来花了些时间查查资料,又和同事交流了一下,算是把C++上对于UTF8编码的处理大概摸清楚了。 字符集 先说一个名词:字符集,没听过的先百度一下,其实就是一种将字符编码的格式,像我们常说的ASCII,UTF8,GBK都是常用的字...
2019-01-16 10:09:08
1408
1
转载 ASN.1 key structures in DER and PEM
Format Name Description PKCS #7 Cryptographic Message Syntax Standard A PKCS #7 file can be used to store certificates, which is a SignedData structure without data (just the certificate...
2019-01-11 15:56:24
325
转载 用实例给新手讲解RSA加密算法
RSA加密算法是最常用的非对称加密算法,CFCA在证书服务中离不了它。但是有不少新来的同事对它不太了解,恰好看到一本书中作者用实例对它进行了简化而生动的描述,使得高深的数学理论能够被容易地理解。我们经过整理和改写特别推荐给大家阅读,希望能够对时间紧张但是又想了解它的同事有所帮助。 RSA是第一个比较完善的公开密钥算法,它既能用于加密,也能用于数字签名。RSA以它的三个发明者Ron Ri...
2019-01-08 14:02:36
400
转载 ring3层一种占用文件的方法(DuplicateHandle以后,把占用文件的句柄丢给系统进程,导致被占用)
前段时间,一个测试工程师问我关于怎样长时间的占用一个文件,而使别的程序无法再访问这个文件,想起以前很多病毒木马经常劫持hosts文件不放,除非你找到占用文件的程序,并强行结束掉,否则怎么也访问不了hosts文件,病毒通过劫持这个文件来达到劫持你的域名的目的,很有可能你输入了www.baidu.com,访问的却是一个带颜色的网站,并稀里哗啦在后台下了上百个病毒,扯远了,呵呵。 其实sdk里...
2018-12-15 10:39:50
306
1
转载 谨慎使用多线程中的fork
前言在单核时代,大家所编写的程序都是单进程/单线程程序。随着计算机硬件技术的发展,进入了多核时代后,为了降低响应时间,重复充分利用多核cpu的资源,使用多进程编程的手段逐渐被人们接受和掌握。然而因为创建一个进程代价比较大,多线程编程的手段也就逐渐被人们认可和喜爱了。记得在我刚刚学习线程进程的时候就想,为什么很少见人把多进程和多线程结合起来使用呢,把二者结合起来不是更好吗?现在想想当初...
2018-12-15 09:28:44
245
转载 绝对干货!初学者也能看懂的DPDK解析
本文由Willko发表于云+社区专栏一、网络IO的处境和趋势从我们用户的使用就可以感受到网速一直在提升,而网络技术的发展也从1GE/10GE/25GE/40GE/100GE的演变,从中可以得出单机的网络IO能力必须跟上时代的发展。1. 传统的电信领域IP层及以下,例如路由器、交换机、防火墙、基站等设备都是采用硬件解决方案。基于专用网络处理器(NP),有基于FPGA,更有基于AS...
2018-11-26 10:52:56
3295
转载 SpinLock 锁实现
原文地址:http://locklessinc.com/articles/locks/ 翻译时与原文略有简化,并增加了一些注释方便理解大多数的并行编程都或多或少的要用到锁,锁可以提供互斥的访问来保证数据的一致性。没有锁的话,多线程并发很可能同时修改同一个数据结构。而无锁算法往往需要仔细复杂的设计,否则程序会进入未预期的状态导致系统崩溃。而无锁算法的设计非常困难,大部分的程序都会用到锁。如果...
2018-10-26 14:01:45
553
转载 VS2010对C++11的支持程度
#include <cassert>#include <cctype>#include <cerrno>// #include <cfenv> // 不支持#include <cfloat>// #include <cinttypes> // 不支持#include <cstdint>#include
2018-10-11 13:56:55
4593
转载 支持 C++11/14/17 功能(现代 C++)
https://msdn.microsoft.com/zh-cn/library/hh567368.aspx若要了解有关 Visual Studio 2017 RC 的最新文档,请参阅 Visual Studio 2017 RC 文档。本文描述了 Visual C++ 中的 C++11/14/17 功能。 本文内容 C++11 功能列表 C++11 核心语言功能...
2018-10-11 13:55:52
1252
转载 短信开发
1.1. 基本知识短信开发指通过串口 at 命令驱动短信猫进行短信发送和接收操作。在 java 中 主要使用 javax.comm 包进行开发,sun 公司网上地址 : http://java.sun.com/products/javacomm/使用工具 : windows 自带超级终端 短信猫操作分为三种模式: block,pdu 和 Text短信传送有三种编码: 7...
2018-07-26 09:45:19
811
转载 3GPP 协议导读
24.008 Mobile radio interface Layer 3 specification; Core network protocols; Stage 3 Must Have 這是我最常用到的spec之一,對我而言也是最入門的一份。大多數spec是用來查的,但是這份從第四章開始是可以一頁 頁讀過的。它定義了Mobility Man...
2018-07-24 21:56:19
8303
2
转载 Unicode 和 UTF-8 有什么区别?
很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物。他们看到8个开关状态是好的,于是他们把这称为”字节“。再后来,他们又做了一些可以处理这些字节的机器,机器开动了,可以用字节来组合出很多状态,状态开始变来变去。他们看到这样是好的,于是它们就这机器称为”计算机“。开始计算机只在美国用。八位的字节一共可以组合出256(2的8次方)种不同的状态。 他们把其中的编...
2018-07-11 19:54:41
246
转载 【善用工具】程序性能分析Gperftools初探(libwind+pprof+Kcachegrind)
gperftools性能分析通过抽样方法完成,默认是1秒100个样本,so,一个样本是10毫秒,即时间单位是10毫秒. 之所以要在这里特别说明,是因为需要注意到:如果程序运行时间不到10ms,那么得到的结果可能会和开始执行的时候不同.0.系统信息sjc@sjc-pc:~/baidu/gperftool/test$ uname -aLinux sjc-pc 3.19.0-25-generic #2...
2018-07-05 20:43:57
2426
转载 GObject 对接口的模拟
在文档 [1] 中谈到接口古已有之,但是类的继承赋予了它一些新的概念。本文结合实例,学习如何使用 GObject 库所提供的接口类型来表达这些概念。接口声明下面的代码(文件名 my-iusb.h)声明了一个叫做 MyIUsb 的接口,My 是项目名,I 是 interface 的首字母的大写,Usb 表示接口的名称。MyIUsb 就表示在“My”项目里,Usb 是一个 Interface。?123...
2018-06-27 09:45:49
321
转载 GObject 对接口的模拟
在文档 [1] 中,我们构造了一个 KbBibtex 类,其构造过程看似挺复杂,但实际上只需要动手尝试一下,即可明白 GObject 子类化的各项步骤的意义与作用。许多事物之所以被认为复杂,是因为大家在观望。本文沿用文档 [1] 中的那个 KbBibtex 示例,学习如何对其进行子类化,构造新类,即面向对象程序设计方法中类的继承。文献有很多种类写过论文的人都知道,参考文献的形式有许多种类,例如期刊...
2018-06-27 09:37:17
218
转载 温故而知新
也许很多人将孔子所说的“温故而知新”理解为:温习学过的知识,从中获得新的领悟。但是,我更倾向于另一种解释:温习学过的知识,继续学习新的知识。本文借助一个更加平易和现实的示例用以温习文档 [1-3] 中的 GObject 知识,并进一步学习类与对象的方法。Bibtex 文献数据格式使用 TeX 写论文,免不了要用 Bibtex 处理参考文献,像 google scholar 这样的网站,直接提供 b...
2018-06-27 09:36:54
406
转载 GObject 子类私有属性的外部访问
之前,写了一篇 GObject 劝学的文章 [1],还有两篇有关 GObject 子类对象数据封装的文章 [2, 3]。虽然,创建一个 GObject 子类对象需要一些辅助函数和宏的支持,并且它们的内幕也令人费解,但是只要将足够的信任交托给 GObject 开发者,将那些辅助函数和宏当作“语法”糖一样享用,一切还是挺简单的。至于细节,还是等较为全面的掌握 GObject 库的用法之后再去挖掘!现在...
2018-06-26 15:00:22
203
转载 GObject 子类对象的私有属性模拟
转载自 http://garfileo.is-programmer.com/2011/2/28/data-hiden.24848.html上一篇文章“使用 GObject 库模拟类的数据封装形式”讲述了 GObject 子类化过程,本文以其为基础,进一步讲述如何对数据进行隐藏,即对面向对象程序设计中的“私有属性”概念进行模拟。非类类型数据的隐藏第一个问题,可以称之为非类类型数据结构的隐藏,因为 P...
2018-06-26 14:48:09
188
转载 使用 GObject 库模拟类的数据封装形式
转载自 http://garfileo.is-programmer.com/2011/2/27/the-analog-of-classed-type-based-gobject.24798.html事实上,有关 GObject 库的学习与使用,GObject 库参考手册提供了一份简短且过于晦涩的指南。如果你能够理解它,那么完全可以无视这篇以及后续的几篇文章。倘若没有明白那份指南,那么建议最好能克制...
2018-06-26 14:39:06
122
转载 你应该知道的 RPC 原理
在校期间大家都写过不少程序,比如写个hello world服务类,然后本地调用下,如下所示。这些程序的特点是服务消费方和服务提供方是本地调用关系。而一旦踏入公司尤其是大型互联网公司就会发现,公司的系统都由成千上万大大小小的服务组成,各服务部署在不同的机器上,由不同的团队负责。这时就会遇到两个问题:1)要搭建一个新服务,免不了需要依赖他人的服务,而现在他人的服务都在远端,怎么调用?2)其它团队要使用...
2018-06-22 09:15:41
194
转载 SCTP编程
Stream Control Transmission ProtocolStream Control Transmission Protocol (SCTP) is a reliable transport protocol that provides services similar to the services provided by TCP. In addition, SCTP provi...
2018-05-28 18:03:39
1194
转载 以DxR算法思想为基准设计出的路由项定位结构图解
首先,题目中说是路由项定位结构而非查找结构,说的是,使用这个结构,以一个IPv4地址作为输入的时候,在得到下一跳的过程中,将不会有任何的查找操作,仅仅不断使用索引定位就可以了。为了先有一个直观上的认识,先给出查找结构图:1.先从多级索引说起在我的那次失败经历中,我企图完全模仿MMU来设计路由查找结构,结果失败了。其实现在想想,也不失败,因为路由项的数目毕竟是有限的,对于整个4G个IPv4地址来讲,...
2018-05-26 13:54:37
302
转载 路由之路由表查找算法概述-哈希/LC-Trie树/256-way-mtrie树
引:路由是互联网的一个核心概念,广义的讲,它使分组交换网的每个节点彼此独立,通过路由耦合在一起,甚至在电路交换网中,虚电路的建立也依赖路由,路由就是网络中数据通路的指向标。狭义的讲,路由专指IP路由,它支撑着整个IP网络。 由于IP是数据报网络,它是不建立连接的,因此IP分组是一跳一跳被转发,通路是通过路由信息一跳一跳的被打通的,因此路由直接关系到整个基于IP的网络的连通性。由于IP协议没...
2018-05-26 11:32:23
6783
1
转载 解读5G非独立组网(NSA)方案
5G NR架构演进分为:NSA(非独立组网)和SA(独立组网)。在2016年3GPP釜山会议上,德国电信提出了12种组网选项。其中选项3/3a/3x、7/7a/7x、4/4a为非独立组网构架,选项2、5为独立组网构架。▲图片来源NOKIA对于NSA部署,可选择共站部署和非共站部署两种方式。▲5G基站和4G基站共站与非共站部署方式5G基站(gNB)可作为宏站,与现有的LTE基站(eNB)共站部署,提...
2018-05-12 11:36:00
42734
1
转载 使用def文件简化dll导出
在C++中,我们可以通过 __declspec(dllexport) 将函数导出为Dll中供其它程序使用,例如: _declspec(dllexport) int add(int a, int b);在这种方式下,如果调用该dll的是一个c++程序(同一个编译器的版本)是没有问题的。但是,如果调用该dll是一个其它语言的程序(如C#、VB),则会出错。究其原因,是因为在C++中存在函数的重载...
2018-05-12 11:20:29
331
转载 软件质量之道:SourceMonitor
有些事非做不可,并非为了幸福,而是缓解痛苦,因为不做,则更痛苦——这便是无奈。夏中义 《文心独白》 1 引子博客又有一阵子没更新了,最近认真思考了阿里上市的成功之处:选择和坚持。其实人生并没有绝对的对与错,也没有绝对的成功与失败。正如“有些人活着,他已经死了”云云,我总是拿对与错来让自己选择,其实就是根本的错误。决定走一条路,就继续走下去,终点虽然不知道在哪里,那就尽情享受沿途的风景,以及珍惜与身...
2018-04-27 10:08:58
573
转载 运营商与BAT的区别
BAT其实也是运营商,运营的是网站,CM/CU/CT(以下简称MUT)运营的是管道。MUT的运营特色是本地化,管道建到哪里,就覆盖到哪里的用户,地域性强。BAT的运营特色是一点提供,全网覆盖;借助电信运营商的管道,一个网站就可以覆盖全国乃至全球的用户。MUT由于本地化服务,而用户是全球分布和全球流动的,因此需要考虑联合同行实现漫游服务,以及需要与同行互联互通。BAT由于具备全球服务覆盖面和全网端到...
2018-04-13 17:19:05
931
转载 解读开源软件七种盈利模式
法律条款都公开 但律师照样赚钱!医学知识都公开 但医生照样赚钱!软件行业由于其技术的特殊性,软件存在源代码与二进制代码之分,存在编译过程。导致源代码一直成为盈利的一个新卖点。但任何行业都一样,都存在一个发展和变迁的过程。软件行业也是如此。如今开源软件已经在全球范围内迅猛发展。开源产品已经完全可以替代现有商业软件。包括操作系统Linux,浏览器FireFox,开源ERP/CRM信息化方案,服务器应用...
2018-04-13 15:56:16
3910
Oran V0.8规范文档
2022-04-12
confd-basic-7.6.linux.x86_64
2022-03-31
IEEE-802.11i
2014-12-24
ipv6相关文档
2014-12-24
Ethernet vendor codes and well-known MAC addresses
2014-11-05
C++ Hackers Guide.pdf
2010-12-10
ebtables-iptables interaction on a Linux-based bridge.mht
2010-12-10
深入浅出MFC.pdf
2008-11-21
在 C/C++ 中调用 Java
2008-10-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人