首 页IT知识库收藏本站
当前位置:翔宇亭IT乐园IT知识库编程技术C/C++
C/C++知识文章关闭所有内容预览 | 展开所有内容预览
  • 使用CFile类读取大文件 [内容预览] 1308 | 2010-08-05
    由于vc6中mfc的cfile类使用32位整型数来处理文件,所以它只支持不大于4gb的文件,若超过这个范围的文件cfile就管不了。当然,在微软的.net中vc7的cfile类中已经支持大于4gb的文件,但我们还有必要为VC6爱好者探讨一下在CFile类中支持大文件的方法。 class cfile64 : public cfile { public: // attributes ulon...

    [阅读全文]

  • 使用CFile类进行文件的读写 [内容预览] 1187 | 2010-08-05
    文件的读写非常重要,下面将重点进行介绍。文件读写的最普通的方法是直接使用CFile进行,如文件的读写可以使用下面的方法: //对文件进行读操作 char sRead[2];  CFile mFile(_T("user.txt"),CFile::modeRead);   if(mFile.GetLength()<2)   return;  mFile.Read(sRead,2); ...

    [阅读全文]

  • CFile类简介 [内容预览] 1150 | 2010-08-05
    CFile类是MFC文件类的基类,它直接提供非缓冲的二进制磁盘输入/输出设备,并直接地通过派生类支持文本文件和内存文件。 CFile与CArchive类共同使用,支持MFC对象的串行化。该类与其派生类的层次关系让程序通过多形CFile接口操作所有文件对象。例如,一个内存文件相当一个磁盘文件。使用CFile及其派生类进行一般目的的磁盘I/O,使用ofstream或其它Microsoft输入输出流类...

    [阅读全文]

  • C++中CArchive类介绍 [内容预览] 1391 | 2010-08-05
    CArchive类用于二进制保存档案,其主要提供了两个函数:CArchive和Close以及两个操作符:<<和>>,下面将对其分别作介绍。 1、主要函数 (1)CArchive::CArchive 建立一个CArchive对象 CArchive(CFile* pFile,UINT nMode,int nBufSize=4096,void* lpBuf=NULL); 参数:pFile 指向...

    [阅读全文]

  • 结构成员对齐与序列化 [内容预览] 357 | 2010-06-04
    在许多广泛应用的程序库,我们会看到类似 #pragma pack(push, 4) 等这样的标示。因为用户会任意更改他们的结构成员对齐选项,对于先于这些内容创建的程序库来说,不能确保一定的内存布局将可能在预先书写的一些数据访问模块上导致错误,或者根本不可能实现。 我在实现一种C++ 类的实例的序列化工具时,依赖了内存布局。我知道市面上很多“序列化”工具允许更为广泛的通信用途,但是它们也是用起来最...

    [阅读全文]

  • C语言内存处理函数 [内容预览] 503 | 2010-04-29
    C语言分配内存的方式主要有以下几种方式: (1) 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。 (2) 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。 (3)从堆上分配,亦称动态内存分...

    [阅读全文]

  • C语言free函数的原理 [内容预览] 358 | 2010-04-29
    如果malloc 了一块字符串的内存,然后,它改变了这个字符串的大小,问会不会有一部分内存没有被释放掉。当然,肯定会释放掉的,但是一直没有了解过free 的原理,不敢乱说。我看了一下操作系统的内存管理,基本上是这样的,当然各个系统的实现不一样。 操作系统管理内存,维护了一个空闲内存链表,malloc从个链表中选出一个来使用,每个内存块都有一个头部来表示这个内存的基本信息,如内存大小,所以free...

    [阅读全文]

  • C++成员函数指针的使用方法 [内容预览] 251 | 2010-04-29
    本文介绍了C++编程中成员函数指针的使用方法。成员函数的指针一般是这么用的,如下例: class A { public: char hello(int a){ return a-'0'; } }; typedef char (A::*PTRFUN)(int); int main(){ A* obj=new A(); PTRFUN pFun; pFun = A::he...

    [阅读全文]

  • C++中抛出0xc0000417异常错误代码的原因 [内容预览] 3268 | 2010-04-29
    最近在编写C++程序时,瑞然在能够出错的地方都使用了try...catch处理,可是程序总是静静地退出,从外部的进程查询它的退出码,结果是0xc0000417,在网上搜索了一下,原来是“未知软件错误”。 那这个异常是谁抛出来的呢?我到VS的安装目录去找0xc0000417,结果在ntstatus.h找到定义: // // MessageId: STATUS_INVALID_CRUNTIME_...

    [阅读全文]

  • c++中typedef的使用方法 [内容预览] 295 | 2010-04-29
    c++中有一个关键字typedef,它主要是把一种数据类型定义为另一个标识符来使用,在程序中使用该标识符来实现相应数据类型变量的定义。下面给出三种常用的地方。 (1)简单类型替换: #include "stdafx.h" #include <iostream> #include <string> using namespace std; typedef int INT; int m...

    [阅读全文]

  • 如何编写跨平台应用程序 [内容预览] 680 | 2010-03-26
    本文介绍了编写跨平台应用程序的方法。 我们使用的许多著名的应用程序,比如VC,WINRAR,SVN等等,都既能在WIN下运行,也支持命令行操作。这是很爽的,习惯在可视化下操作的同志,可以使用GUI界面操作,习惯怀旧或者喜欢命令行操作的同志,可以使用命令操作。同时我们也可以根据不同情况灵活运用,如果你要把硬盘上多于一百个的影视文件分别压缩成压缩包,并加入说明文件,使用可视化操作显示是一件费时费力的...

    [阅读全文]

  • 学C++不得不看的一篇文章 [内容预览] 141 | 2010-03-26
    做为一名大四的学生,我面试过不少的单位,有成功的也有失败的,但是对我来说所有的失败在某种意义上都是一种成功,特别是我下面写的这些,写这篇文章的时候,我已经签了南京的一家软件公司,但是想起今年2月21日我面试苏州台湾的IT公司的经历联想到我们现在学习编程的一些情况我真的深有感触,这次面试使我深深的体会到了失败但也收获了很多。我要说的将分成三部分: (1)是我面试的具体经过 (2)是由面试想到的 ...

    [阅读全文]

  • [图文] 1.3 结构化程序设计方法 [内容预览] 1594 | 2010-03-21
    程序设计的基本目标是用算法对问题的原始数据进行处理,从而获得所期望的效果。但这仅仅是程序设计的基本要求。要全面提高程序的质量,提高编程效率,使程序具有良好的可读性、可靠性、可维护性以及良好的结构,编制出好的程序来,应当是每位程序设计工作者追求的目标。而要做到这一点,就必须掌握正确的程序设计方法和技术。 1.3.1 程序的三种基本结构 结构化程序的概念首先是从以往编程过程中无限制地使用转移语句而...

    [阅读全文]

  • [图文] 1.2 算法和算法的表示 [内容预览] 1544 | 2010-03-20
    1.2 算法和算法的表示 1.2.1 算法的概念 1.算法的基本概念 什么是算法?当代著名计算机科学家D.E.Knuth在他撰写的《THE ART OF COMPUTER PROGRAMMING》一书中写到:"一个算法,就是一个有穷规则的集合,其中之规则规定了一个解决某一特定类型的问题的运算序列。"简单地说,任何解决问题的过程都是由一定的步骤组成的,把解决问题确定的方法和有限的步骤称作为算法...

    [阅读全文]

  • 1.1 程序与程序语言 [内容预览] 497 | 2010-03-20
    随着科学技术的迅猛发展,计算机技术日新月异,计算机程序设计语言也层出不穷。那么,什么是程序语言,什么是程序设计?应该学哪一种程序语言,如何进行程序设计?这些都是程序设计初学者首先遇到的问题,也是程序设计的基本问题、共性问题。 不论是什么样的计算机语言,其程序设计的基本方法是相同的。本书作为程序设计的入门教材,将以C语言程序设计为主线,介绍程序设计的基本概念和基本方法,讲述C语言的语法规则和实用的...

    [阅读全文]

  • C语言概述 [内容预览] 642 | 2010-03-20
    本节详细介绍了C语言的产生于发展、C语言的特点、Turbo C的产生于发展,并在此基础上详细地介绍了Turbo C软件的界面菜单的功能。 一、C语言的产生与发展 C语言是1972年由美国的Dennis Ritchie设计发明的,并首次在UNIX操作系统的 DEC PDP-11 计算机上使用。它由早期的编程语言BCPL (Basic Combind Program命 Language)发展演变而...

    [阅读全文]

  • [图文] 使用C++绘制不规则的窗体 [内容预览] 685 | 2010-02-23
     一、序言  在绝大多数的Windows应用程序中,其窗体都是使用的正规正矩的矩形窗体,例如我们常用的,“记事本”,“扫雷”,等等。矩形窗体,具有编程实现简单,风ge简洁的优点,所以在普通文档应用程序和简单小游戏中使用足矣。但在某些娱乐游戏程序中使用就略显呆板些了,这时若用不规则窗体替代原先的矩形窗体,将会使这类程序更添情趣。典型的例子有windows 自代的Media Player,新版...

    [阅读全文]

  • 用C++库连接Oracle, MS SQL, MySQL等数据库 [内容预览] 912 | 2010-02-23
    最近在网上找到一个好东西SQLAPI++,它是可以访问多个SQL数据库(Oracle, SQL Server, DB2, Sybase, Informix, InterBase, SQLBase, MySQL, PostgreSQL)C++库。SQLAPI++直接调用本地目标数据库管理系统(DBMS)的API(不像ADO一样使用OLEDB and/or ODBC 中间层)。SQLAPI++库扮演了...

    [阅读全文]

  • [图文] 如何自绘ListView表头 [内容预览] 437 | 2010-02-23
    TlistView 控件是vcl 对windows公用控件库的一个封装.用户TlistView控件并未提供自绘表头的事件, 一般情况下, 要想自绘表头比较困难. 但是windows 所有控件的绘制都是由于消息WM_PAINT的产生,而由窗口过程来绘制的, 这样我们似乎就有可能通过WM_PAINT消息能够绘制TlistView表头. 经过分析发现TlistView 的组成实际上包括了两部分, 一部...

    [阅读全文]

  • C++的CIN和COUT操作符 [内容预览] 774 | 2010-02-05
    C++中的CIN和COUT是两个操作符(operator),且是左操作符,相同于+, -等操作符,而且与这些操作符一样,返回的表达式值为左值。看下面这个例子:  #include <iostream.h>  int main(int argc, char **argv)  {  std::cout << "Enter two numbers: " << std::endl;  int v...

    [阅读全文]

  • MFC 控件随窗体大小而变化 [内容预览] 348 | 2010-02-05
    1.添加OnInitialUpdate() 2.添加控件成员变量  void CFS_DataView::OnInitialUpdate()  {  CFormView::OnInitialUpdate();  // TODO: Add your specialized code here and/or call the base class  CRect rect;  GetWin...

    [阅读全文]

  • 慎用CMFCToolBar::CreateEx [内容预览] 604 | 2010-02-05
    MFC Feature Pack/VC2008 SP1提供了新的控件,这包括以前需要花费购买的控件,这些控件原来由BCG Soft 开发,在VS2008发布后,被收入后以FeaturePack或SP1的方式发布(VS2008安装包原本没有此功能包,必须额外安装)。对很多用户来说,属性列表控件、真彩色工具条、工具条、停靠栏、更换皮肤、标签式多文档、智能停靠、个性化布局,还有Office、VS中众多的...

    [阅读全文]

  • 关于C语言中的无符号数和有符号数 [内容预览] 364 | 2010-02-05
    无符号数和有符号数是不能进行比较运算的,否则可能会出现意想不到的错误,且极难检查出来!  首先肯几个例子(假设在32位的机器上):  1. 0 == 0U   2. -1 < 0U (注: 0是无符号的)   3. 2147483647U > -2147483647 - 1   4. 2147483647 > (int) 2147483648U  结果如下:   1. 1   2...

    [阅读全文]

  • C语言关键字 [内容预览] 151 | 2010-01-27
    C 语言标准定义的32 个关键字 auto :声明自动变量 一般不使用 double :声明双精度变量或函数 int: 声明整型变量或函数 struct:声明结构体变量或函数 break:跳出当前循环 else :条件语句否定分支(与 if 连用) long :声明长整型变量或函数 switch :用于开关语句 case:开关语句分支 enum :声明枚举类型...

    [阅读全文]

  • VC里一些容易混淆的地方 [内容预览] 191 | 2010-01-26
    .Ord974 { display:none; } 1.FALSE/TRUE与false/true的区别: false/true是标准C++语言里新增的要害字,而FALSE/TRUE是通过#define,这要用途是解决程序在C与C++中环境的差异,以下是FALSE/TRUE在windef.h的定义: #ifndefFALSE #defineFALSE0 #endif #if...

    [阅读全文]

  • C语言简介 [内容预览] 282 | 2010-01-05
    C语言是Combined Language(组合语言)的中英混合简称。是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛,不仅仅是在软件开发上,而且各类科研都需要用到C语言,具体应用比如单片机以及嵌入式系统开发。 1.发展历史 C语言的原型AL...

    [阅读全文]

总数8630 上一页1 2 3下一页
关于本站 | 网站帮助 | 广告合作 | 网站声明 | 友情连接 | 网站地图
本站部分内容来自互联网,如有侵权,请来信告之,谢谢!
Copyright © 2007-2024 biye5u.com. All Rights Reserved.