C/C++通用编程技术
nightelve
一个业余程序员
展开
-
如何使用 类进行文件的 I/O 处理
作者:Danny Kalev编译:MTT 工作室下载源代码原文出处:How to Use Classes for File I/O摘要:传统的文件 I/O 库如 Unix 的 和 ,由于其程序接口的原因,在很大程度上强制程序员进行某些处理,缺乏类型安全和国际化支持。C++ 的 库则在文件的 I/O 方面提供了一个增强的、面向对象的、具有国际化意识的库。本文将介绍如何转载 2007-08-08 14:47:00 · 696 阅读 · 0 评论 -
Why system() is evil
So, you are here because everyone keeps telling you that things like system("PAUSE") and system("CLS") are bad. But no one really says why.Here's why.----------------- It Is Resource Hea转载 2013-07-11 15:26:13 · 813 阅读 · 0 评论 -
关于restrict关键字
restrict是用来优化的,是C99新加的关键字,估计流行的编译器还不支持。 你可以把restrict删除,然后直接编译,运行结果一样的,最多慢一点。C/C++灵活的语法限制了它们的计算速度。譬如这个函数: void func(const int* values1,const int* values2,int* values3,int valueNum) { for(int转载 2013-06-28 05:31:32 · 829 阅读 · 0 评论 -
内存越界导致的malloc失效问题
#include stdlib.h>#include stdio.h>#include memory.h>int main(){ #define BUF_SIZE 25 _asm int 3; char* lpszBuf = (char*)malloc(BUF_SIZE); memset(lpszBuf, 0x00, BUF_SIZE原创 2013-06-28 05:29:18 · 965 阅读 · 0 评论 -
各语言打印调用栈
java里面可以使用Throwable类来获取堆栈,示例代码如下:[java] view plaincopypackage name.xu; public class CallStack { public static void printCallStatck() { Throwable ex = n转载 2013-07-20 04:36:14 · 867 阅读 · 0 评论 -
when should BOOL and bool be used in c
项目里,有个之前兄弟留下的库。硬生生将BOOL定义为bool,极为不和谐。今天半夜忽然回想起bool 跨模块返回值会出问题,遂查了查资料。看到有位小兄弟在stackoverflow上的提问。http://stackoverflow.com/questions/830067/when-should-bool-and-bool-be-used-in-c底下就有老兄做了解答Matth转载 2013-07-26 04:39:26 · 1064 阅读 · 0 评论 -
Anders Hejlsberg谈C#、Java和C++中的泛型
[人物介绍] Anders Hejlsberg,微软著名工程师,带领他的小组设计了C#(读作:C-Sharp)程序设计语言。Hejlsberg第一次登上软件界历史舞台是在80年代早期,因为他为MS-DOS和CP/M设计了Pascal编译器。当时,还是一个小公司的Borland很快雇用了他,并买下了他的编译器,改称Turbo Pascal。在Borland,Hejlsberg继续开转载 2013-08-13 20:08:14 · 1380 阅读 · 0 评论 -
在Visual Studio调试器中显示Unreal的数据类型的值
原文:http://blog.csdn.net/witton/article/details/5977766 在Unreal引擎中大量使用了自定义的数据类型如:FName,FString,TArray等等,对于这些自定义的数据类型,我们无法直接查看到这些数据的值,但是我们可以编写VS中的autoexp.dat文件中的脚本,来达到我们需要在调试器中显示的方式。 由转载 2013-09-13 23:11:16 · 1650 阅读 · 0 评论 -
C++之常量(一)
1概述一个C++程序就是一系列数据与操作的集合。当一个C++程序开始运行的时候,与该程序相关的数据就会被加载到内存中。当数据与内存发生关联的时候,这些数据就会具有如下的特性:数据在内存中的地址。这个地址决定了数据在内存中的存储位置。在32位的系统中,每一个C++程序都具有4GB大小的内存地址空间,这个4GB大小的内存空间又被划分为若干个区域,如:栈区,堆区,全局(静态)区,文字常量区,转载 2013-09-25 11:17:24 · 3297 阅读 · 2 评论 -
VC2005 warning C4819 消除方法
一、Warning C4819:The file contains a character that can ot be represented in the current code page(936). save the file in unicode format to prevent data loss. 中文意思是:该文件包含不能在当前代码页中表示的字符,请将文件转载 2013-11-16 22:44:42 · 819 阅读 · 0 评论 -
用 C/C++ 写 CGI 程序
其实用 C/C++ 写 CGI 程序非常简单,主要是要清楚什么是 CGI。 CGI全称 Common Gateway Interface (共同编程接口),是一种编程接口,不论什么语言,只要按照该接口的标准编写出来的程序,即可叫做 CGI 程序。CGI 程序的输入/输出是使用编程语言的标准输入/标准输出,所以用 C/C++ 来写 CGI 程序就好象写普通程序一样,不过还有几样东西要注意的。转载 2013-11-05 23:10:21 · 1708 阅读 · 0 评论 -
使用GFlags检测内存越界访问
GFlags是Windows debug tools 工具包下的一个工具,在Windows 2000的Resource Kit中也可以找得到。用来设置一些调试属性,总体上分为3个级别System,Kernel和Image File。我们设置好Path环境变量,将其指向Debug tools工具的目录下。下载安装 gflags:http://www.microsoft.com/whd转载 2013-07-08 00:35:05 · 2381 阅读 · 0 评论 -
新的C语言:一切都源于FORTRAN(restrict的历史)
此篇文章摘取于即将登载于《Dr.Dobb's 软件研发》第三期(2003年10月)的《The New C:一切源于FORTRAN》,文章主要是介绍了C99的新特性受限指针,在得到作者Randy Meyers以及《Dr.Dobb's 软件研发》杂志负责人刘江先生的应允下,把全文的前面的一部分作为文档发表,希望能对大家有所帮助。 新的C语言:一切都源于FORTRAN转载 2013-04-13 20:54:10 · 995 阅读 · 0 评论 -
STL 详解
Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。这里说下map内部数据的组织,map内部自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在map内部所有的数据都是有序的,后边我们会见识到有原创 2007-08-08 07:45:00 · 786 阅读 · 0 评论 -
Sequence Value Char What it does
Sequence Value Char What it does /a 0x07 BEL Audible bell /b 0x08 BS Backspace /f 0x0C FF Formfeed /n 0x0A LF Newline (linefeed) /r 0x0D CR Carriage return /t 0x09 HT Tab (h原创 2007-08-29 12:36:00 · 598 阅读 · 0 评论 -
学习STL map, STL set之数据结构基础
作者: winter 摘要:本文列出几个基本的STL map和STL set的问题,通过解答这些问题讲解了STL关联容器内部的数据结构,最后提出了关于UNIX/LINUX自带平衡二叉树库函数和map, set选择问题,并分析了map, set的优势之处。对于希望深入学习STL和希望了解STL map等关联容器底层数据结构的朋友来说,有一定的参考价值。STL map和set的使用虽不复杂,但转载 2007-08-25 11:07:00 · 744 阅读 · 0 评论 -
STL相关
算法: 1.排序: 让我们来总结一下你的排序操作: 若需对vector, string, deque, 或 array容器进行全排序,你可选择sort或stable_sort; 若只需对vector, string, deque, 或 array容器中取得top n的元素,部分排序partial_sort是首选. 若对于vector, string, deq转载 2007-09-14 16:36:00 · 775 阅读 · 0 评论 -
(#)
Stringizing Operator (#)See AlsoPreprocessor OperatorsThe number-sign or "stringizing" operator (#) converts macro parameters (after expansion) to string constants. It is used only with转载 2007-09-15 16:44:00 · 856 阅读 · 0 评论 -
从“size_t”转换到“int”,可能丢失数据
e:/projects/winme/winme/win.cpp(63) : warning C4267: “参数”: 从“size_t”转换到“int”,可能丢失数据 e:/projects/winme/winme/win.cpp(70) : warning C4267: “参数”: 从“size_t”转换到“int”,可能丢失数据 这两个是什么意思? ----------------------原创 2007-09-18 09:27:00 · 26757 阅读 · 3 评论 -
学习c++的过程
在论坛上看到好多新手学习c++的时候都感觉无从下手,在这里把学习的过程和一些推荐的资料列举一下。原创 2011-06-02 02:49:00 · 161 阅读 · 0 评论 -
如何用CZip/CUnzip类压缩/解压缩文件
作者:hangwireZip/Unzip dll源代码下载 范例程序下载本文介绍如何用CZip/CUnzip类压缩/解压缩文件,这个类使用gzip GNU源代码(gzip-1.2.4a)。这是个免费软件,在GUN通用公共许可证(General Public License)条款下可以分发及修改此软件,关于这个通用公共许可证的详细条款请参考:http://www.vckbas转载 2007-08-14 16:48:00 · 3248 阅读 · 0 评论 -
标准模板库(STL)学习指南之List容器
标准模板库(STL)学习指南之List容器 时间: 2005-02-09 来自:BLOG 什么是STL呢?STL就是Standard Template Library,标准模板库。这可能是一个历史上最令人兴奋的工具的最无聊的术语。从根本上说,STL是一些“容器”的集合,这些“容器”有list,vector,转载 2007-08-08 08:11:00 · 614 阅读 · 0 评论 -
判断文件可写性
_access, _waccessRequirementsRoutineRequired headerOptional headersCompatibility_accessWin 98, Win Me, Win NT, Win 2000, Win XP_waccess or Win NT, Win 200转载 2007-08-17 13:01:00 · 862 阅读 · 0 评论 -
STL vector 容器介绍
STL vector容器介绍A Presentation of the STL Vector Container (By Nitron)翻译 masterlee介绍std::vector,并且讨论它在STL中的算法和条件函数remove_if()。 Download Console Demo - 6.19 Kb Download MFC Demo -转载 2007-08-08 08:02:00 · 670 阅读 · 0 评论 -
Building Visual Leak Detector from Source
Building Visual Leak Detector from SourceBecause Visual Leak Detector is open source, it can be built from source if you want to tweak it to your liking. The most difficult part about building VLD f转载 2013-12-31 22:09:19 · 1345 阅读 · 0 评论