C/C++
文章平均质量分 78
攻城狮
这个作者很懒,什么都没留下…
展开
-
VS2005 vs2008 vs2010 vs2012 远程调试
一 远程端的设置 1. 远程机器端 的安全选项 在远程机器上,开始——设置——控制面板——管理工具——本地安全策略——本地策略——安全选项,在右侧找到网络访问:本地帐户的共享和安全模式,双击它,将“进来宾 - 本地用户以来宾身份验证”,改为:“经典 - 本地用户以自己的身份验证” 2.远程端 运行VS 远程调试监视器 将本地文件夹下远程调试监视器所在文件原创 2016-05-17 13:57:13 · 538 阅读 · 0 评论 -
Makefile学习教程: 写 Makefile
0 Makefile概述 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写mak原创 2011-12-19 23:03:39 · 697 阅读 · 0 评论 -
浅谈文字编码和Unicode(上)
我曾经写过一篇《谈谈Unicode编码,简要解释UCS、UTF、BMP、BOM等名词》(以下简称《谈谈Unicode编码》),在网上流传较广,我也收到不少朋友的反馈。本文探讨《谈谈Unicode编码》中未介绍或介绍较少的代码页、Surrogates等问题,补充一些Unicode资料,顺带介绍一下我最近编写的一个Unicode工具:UniToy。本文虽然是前文的补充,但在写作上尽量做到独立成篇。转载 2011-12-17 23:04:48 · 671 阅读 · 0 评论 -
字符转换
一 C++ 中 string与wstring互转方法一:string WideToMutilByte(const wstring& _src) { int nBufSize = WideCharToMultiByte(GetACP(), 0, _src.c_str(),-1, NULL, 0, 0, FALSE);char *szBuf = new char[n原创 2011-12-17 23:13:29 · 618 阅读 · 0 评论 -
浅谈文字编码和Unicode(下)
3 字符编码模型程序员经常会面对复杂的问题,而降低复杂性的最简单的方法就是分而治之。Peter Constable在他的文章"Character set encoding basics Understanding character set encodings and legacy encodings"中描述了字符编码的四层模型。我觉得这种说法确实可以更清晰地展现字符编码中发生的事情,所以在这转载 2011-12-17 23:06:08 · 4161 阅读 · 1 评论 -
谈谈Unicode编码,简要解释UCS、UTF、BMP、BOM等名词
这是一篇程序员写给程序员的趣味读物。所谓趣味是指可以比较轻松地了解一些原来不清楚的概念,增进知识,类似于打RPG游戏的升级。整理这篇文章的动机是两个问题:问题一: 使用Windows记事本的“另存为”,可以在GBK、Unicode、Unicode big endian和UTF-8这几种编码方式间相互转换。同样是txt文件,Windows是怎样识别编码方式的呢?我很早前就发现Unicod转载 2011-12-14 23:21:42 · 564 阅读 · 0 评论 -
Windows环境下Unicode编程总结
发表日期:2005-07-17作者:bigeye_leo[转贴] 出处:CSDN UNICODE环境设置在安装Visual Studio时,在选择VC++时需要加入unicode选项,保证相关的库文件可以拷贝到system32下。 UNICODE编译设置:C/C++, Preprocessor difinitions 去除_M转载 2011-11-24 11:24:45 · 447 阅读 · 0 评论 -
Windows环境下Unicode编程总结
UNICODE环境设置在安装Visual Studio时,在选择VC++时需要加入unicode选项,保证相关的库文件可以拷贝到system32下。 UNICODE编译设置:C/C++, Preprocessor difinitions 去除_MBCS,加_UNICODE,UNICODE在ProjectSetting/link/output 中设置Entry为wWinMainC原创 2011-10-21 18:37:55 · 406 阅读 · 0 评论 -
大端小端(Big- Endian和Little-Endian)
在各种计算机体系结构中,对于字节、字等的存储机制有所不同,因而引发了计算机通信领 域中一个很重要的问题,即通信双方交流的信息单元(比特、字节、字、双字等等)应该以什么样的顺序进行传送。如果不达成一致的规则,通信双方将无法进行正 确的编/译码从而导致通信失败。目前在各种体系的计算机中通常采用的字节存储机制主要有两种:Big-Endian和Little-Endian,下面先 从字节序说起。原创 2011-10-20 13:50:45 · 416 阅读 · 0 评论 -
原码、反码、补码之来龙去脉
1. 为什么偏向用十六进制? 16进制数逢16进1,2进制逢2进1。2^4=16。 16进制进一位,恰好对应二进制进四位(十六进制10 = 二进制1 0000, 十六进制100 = 二进制1 0000 0000)。 从而,16进制数(如: 2A9),可以按位依次转成二进制: 2(0010)A(1010)9(1001)。每一位对应二进制四位。 即:原创 2011-10-18 17:36:54 · 645 阅读 · 0 评论 -
UTF8和UNICODE和GBK编码
UTF8并不算是一种电脑编码,而是一种储存和传送的格式,如前所述,每个Unicode/UCS字符都以 2或4个bytes来储存,看看以下的比较: 以"I am Chinese"为例用ANSI储存:12 Bytes用Unicode/UCS2储存:24 Bytes + 2原创 2011-10-19 10:38:33 · 1060 阅读 · 0 评论 -
LRC文件结构浅析
LRC概述 LRC 歌词是一种包含着“[*:*]”形式的“标签(tag)”的、基于纯文本的歌词专用格式。最早由郭祥祥先生(Djohan)提出并在其程序中得到应用。这种歌词文件既可以用来实现卡拉OK功能(需要专门程序),又能以普通的文字处理软件查看、编辑。当然,实际操作时原创 2011-10-10 15:27:53 · 1706 阅读 · 0 评论 -
UTF-8, Unicode, GB2312格式串转换之C语言版
这几天工作上碰到了UTF-8转GB2312的问题,而且是在嵌入式的环境下,没有API可用,查了很多网上的资料,大多调用VC或者linux下自带的接口。在这里我将这两天的工作做个总结。 总的来说分为两大步(这里就不介绍基础知识了): 一、UTF8 -转载 2011-10-18 17:30:24 · 468 阅读 · 0 评论 -
C语言字符串格式化处理 sscanf函数
最近开始喜欢上这个函数 sscanf.int sscanf(constchar*buffer, constchar*format [, argument ] ... );在stdlib中,scanf和printf有好多版本:fscanf和fprintf是分别从原创 2011-10-18 17:51:02 · 1274 阅读 · 0 评论 -
sscanf函数用法详解
1. 常见用法。 char str[512] = {0}; sscanf("123456 ", "%s", str); printf("str=%s\n", str); 2.原创 2011-10-18 17:39:11 · 706 阅读 · 0 评论 -
#ifdef __cplusplus深度剖析
时常在cpp的代码之中看到这样的代码: #ifdef __cplusplus extern "C" { #endif //一段代码 #ifdef __cplusplus } #endif 这样的原创 2011-10-08 15:50:42 · 421 阅读 · 0 评论 -
C输出格式总结
1 一般格式 printf(格式控制,输出表列) 例如:printf("i=%d,ch=%c/n",i,ch);说明: (1)“格式控制”是用双撇号括起来的字符串,也称“转换控制字符串”,它包括两种信息: ①格式说明:由“%”和原创 2011-10-14 16:24:22 · 757 阅读 · 0 评论 -
htons(), ntohl(), ntohs(),htons() 函数
在C/C++写网络程序的时候,往往会遇到字节的网络顺序和主机顺序的问题。这是就可能用到htons(), ntohl(), ntohs(),htons()这4个函数。网络字节顺序与本地字节顺序之间的转换函数: htonl()--"Host to Network Long" ntohl()--"Network to Host Long" htons原创 2011-12-19 22:51:06 · 614 阅读 · 0 评论 -
UNIX 正则表达式
^ 锚定行的开始 如:'^grep'匹配所有以grep开头的行。 $ 锚定行的结束 如:'grep$'匹配所有以grep结尾的行。 . 匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符,然后是p。 * 匹配零个或多个先前字符原创 2011-12-21 23:18:38 · 2515 阅读 · 0 评论 -
解决Windows应用程序不能加载C++组件 Side-by-Side错误
起因前两天写了个小工具,在我的机器跑得好好的,QA的测试机里面却死活跑不起来,一运行就出现一个圣诞框,报一个side by side的错误:The application has failed to start because its side-by-side configuration is incorrect. Please see the application even原创 2016-06-02 09:24:04 · 3818 阅读 · 0 评论 -
怎样用cmd启动停止服务
最近心血来潮,不喜欢用图形界面来启动服务,喜欢用cmd方式来解决,网上找来一篇文章,自己的想法立即实现,网络真是好啊!!!在cmd下可有两种方法打开,net和sc,net用于打开没有被禁用的服务,语法是:net start 服务名net stop 服务名用sc可打开被禁用的服务,语法是:sc config 服务名 start= demand //手动原创 2016-05-31 09:22:24 · 5649 阅读 · 0 评论 -
C++ 动态链接库和静态链接库
概论 先来阐述一下DLL(Dynamic Linkable Library)的概念,你可以简单的把DLL看成一种仓库,它提供给你一些可以直接拿来用的变量、函数或类。在仓库的发展史上经历了“无库-静态链接库-动态链接库”的时代。 静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib中的指令都被直接包含在最终生成的EXE文件中了。但是若使用DLL,该DLL原创 2016-05-06 18:19:21 · 6406 阅读 · 1 评论 -
VS2010进行远程调试C++
假设现在有A、B两台PC机。VS2010安装在A机器上,也就是说A机器是开发使用的机器。B机器是程序运行部署使用的机器,其IP为:192.168.1.129(局域网IP)说明:如果B机器是外网IP下面方法照样适合,不过在使用的适合可能会出现无法附加到进程的错误。如果出现无法附加到进程的错误、无法连接到设备.请按照步骤13进行设置。 1、根据vs2010安装目录倒找Remot原创 2016-05-16 14:41:49 · 3074 阅读 · 1 评论 -
判断系统CPU是大端还是小端
所谓的大端小端就是CPU在存储数据的时候是从高地址开始存储还是低地址开始存储。例如在sizeof(int) = 2的系统中,1 + (2 )= 1 + 512 = 513,我们把这个值赋值给int nTemp = 1 + (2 。我们假定系统分配给变量nTemp的地址空间为:0x0000FF08到0x0000FF09,那么0x0000FF08开始的8个位为第一个字节的存储空间,0x0000FF09转载 2012-05-10 22:44:57 · 1513 阅读 · 0 评论 -
Fiddler 教程
Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据. 使用Fiddler无论对开发还是测试来说,都有很大的帮助。阅读目录Fiddler的基本介绍Fiddler的工作原理同类的其它工具Fiddler如何捕获Firefox的会话Fiddler如何捕获HTTPS会话Fiddler的基本转载 2012-03-30 11:37:51 · 763 阅读 · 0 评论 -
HTTP协议详解
当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等。 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作. 本文将对HTTP协议进行详细的实例讲解,内容较多,希望大家耐心看。也希望对大家的开发工作或者测试工作有所帮助。使用Fiddler工具非常方便地捕获HTTP Request和HT转载 2012-03-30 11:35:48 · 751 阅读 · 0 评论 -
HTTP协议详解
引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of原创 2012-03-07 16:25:41 · 778 阅读 · 0 评论 -
HTTP 协议简介
一、TCP/IP 协议介绍在介绍 HTTP 协议之前,先简单说一下TCP/IP协议的相关内容。TCP/IP协议是分层的,从底层至应用层分别为:物理层、链路层、网络层、传输层和应用层,如下图所示: 从应用层至物理层,数据是一层层封装,封装的方式一般都是在原有数据的前面加一个数据控制头,数据封装格式如下: 其原创 2012-03-06 23:12:49 · 875 阅读 · 0 评论 -
HTTP报头
HTTP头字段包括4类: general-header ; request-header ; response-header ; entity-header . ******************************************************************************* General Header Fields =原创 2012-03-06 21:17:34 · 771 阅读 · 0 评论 -
c语言实现函数可变参数
前言: 本文在很大程度上改编自网友kevintz的“C语言中可变参数的用法”一文,在行文之前先向这位前辈表示真诚的敬意和感谢。 一、什么是可变参数 我们在C语言编程中有时会遇到一些参数个数可变的函数,例如printf()函数,其函数原型为: int printf( const char* for转载 2012-03-02 12:09:20 · 898 阅读 · 0 评论 -
注册、反注册dll,regsvr32命令详解
Regsvr32命令修复系统故障实例使用过activex的人都知道,activex不注册是不能够被系统识别和使用的,一般安装程序都会自动地把它所 使用的activex控件注册,但如果你拿到的一个控件需要手动注册怎么办呢?如果修改注册表那就太麻烦了,在windows的system文件夹下有一 个regsvr32.exe的程序,它就是windows自带的activex注册和反注册工具。原创 2012-02-21 17:57:45 · 1919 阅读 · 0 评论 -
C语言写的trim()函数
C语言的标准库中缺少对字符串进行操作的trim()函数,使用起来有些不便,可以使用利用 strlen 和 isspace 函数以及指针来自己写一个。1、strlen 函数原型:extern int strlen(char *s); 用法:#include 功能:计算字符串s的长度说明:返回s的长度,不包括结束符NULL。2、isspace 函数原创 2012-02-07 11:54:10 · 2032 阅读 · 0 评论 -
DOS 批处理符号大全
Dos批处理中符号作用大全 2007-07-14 10:43 @ \\隐藏命令的回显。 ~ \\在for中表示使用增强的变量扩展; 在set中表示使用扩展环境变量指定位置的字符串; 在set/a中表示按位取反。 % \\使用两个%包含一个字符串表示引用环境变量。比如一个%time%可以扩展到当前的系统时间; 单个%紧跟0-9的一个数字表示引用原创 2011-12-25 23:18:05 · 765 阅读 · 0 评论 -
CMD 环境变量
所有的在cmd命令行下对环境变量的修改只对当前窗口有效,不是永久性的修改。也就是说当关闭此cmd命令行窗口后,将不再起作用。永久性修改环境变量的方法有两种:一种是直接修改注册表(此种方法目前没试验过),另一种是通过我的电脑-〉属性-〉高级,来设置系统的环境变量 其次,明确一下环境变量的作用。 它是操作系统用来指定运行环境的一些参数。比如临时文件夹位置和系统文件夹位置等。当你运行原创 2011-12-24 18:42:51 · 986 阅读 · 0 评论 -
Window 批处理详解
批处理文件是无格式的文本文件,它包含一条或多条命令。它的文件扩展名为 .bat 或 .cmd。在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。使用批处理文件(也被称为批处理程序或脚本),可以简化日常或重复性任务。 一.简单批处理内部命令简介 1.Echo 命令原创 2011-12-22 22:54:19 · 950 阅读 · 0 评论 -
AAC解码算法原理详解
AAC解码算法原理详解本文详细介绍了符合ISO/IEC 13818-7(MPEG2 AAC audio codec) , ISO/IEC 14496-3(MPEG4 Audio Codec AAC Low Complexity)进行压缩的的AAC音频的解码算法原创 2011-10-11 16:06:29 · 767 阅读 · 0 评论 -
C 语言陷进与缺陷
原著:Andrew Koenig - AT&T Bell Laboratories Murray Hill, New Jersey 07094翻译:lover_P修订:CQBOY来自:http://blog.csdn.net/loverp/archive/2004/0原创 2011-08-29 17:02:20 · 589 阅读 · 0 评论 -
常用字符集编码详解:ASCII 、GB2312、GBK、GB18030、unicode、UTF-8
ASCII ASCII码是7位编码,编码范围是0x00-0x7F。ASCII字符集包括英文字母、阿拉伯数字和标点符号等字符。 其中0x00-0x20和0x7F共33个控制字符。 只支持ASCII码的系统会忽略每个字节的最高位,只认为低原创 2011-09-01 10:08:09 · 730 阅读 · 0 评论 -
远线程DLL注入技术
远线程DLL注入主要通过使用API CreateRemoteThread创建远程线程来实现,CreateRemoteThread与创建线程用的CreateThread非常相似,除了第一个参数hProcess之外,其他参数都是一样的。hProcess用于指定要在哪个进程中创建远程线原创 2011-08-31 17:07:31 · 681 阅读 · 0 评论 -
C/C++对Unicode编码的处理
一直都觉得C++对Unicode编码的处理比较麻烦,现就个人经验对这一方面做个总结。Unicode编码 在计算机科学领域中,Unicode(统一码、万国码、单一码、标准万国码)是业界的一种标准,它可以使电脑得以呈现世界上数十种文字的系统。Unicode是基于通用字符集原创 2011-09-01 09:45:56 · 1557 阅读 · 0 评论