c语言内存分配:C语言内存使用

有人写了一个将整数转换为字符串的函数:char *itoa (int n){ char retbuf[20]; sprintf(retbuf, \"%d\", n); return retbuf;}  如果我调用这个函数:char *str5 = itoa(5),str5会是什么结果呢?  答案分析:  答案是不确定,可以确定的是肯定不是我们想要的 “5”。   retbuf定义在函数体中,是一个... [阅读全文]

c语言中的引用:C++中的引用

引用是C引入新语言特性是C常用个重要内容的正确、灵活地使用引用可以使简洁、高效我在工作中发现许多人使用它仅仅是想当然在某些微妙场合很容易出错究其原由大多没有搞清本源故在本篇中我将对引用进行详细讨论希望对大家更好地理解和使用引用起到抛砖引玉作用  引用介绍  引用就是某变量(目标)个别名对引用操作和对变量直接操作完全样  引用声明思路方法:类型标识符&引用名=目标... [阅读全文]

系统消息:C++消息连接系统方法

用过C进行过面向对象设计用户都知道中对象很少单独存在不考虑对象间相互作用几乎是不可能所以标识对象间关系或建立对象间消息连接是面向对象设计项重要任务本文着重从C设计角度提出种建立对象间消息连接实用思路方法如果你想详细了解面向对象设计技术请参阅有关专著大家都知道对象是数据和思路方法封装体在C中它们分别表现为数据成员和成员设计者通过执行对象各种思路方法来改变对象状态(... [阅读全文]

c语言代码:C语言之代码检查工具

PC-Lint是一个历史悠久,功能异常强劲的静态代码检测工具。它的使用历史可以追溯到计算机编程的远古时代(30多年以前)。经过这么多年的发展,它不但能够监测出许多语法逻辑上的隐患,而且也能够有效地帮你提出许多程序在空间利用、运行效率上的改进点,在很多专业级的软件公司,比如Microsoft, PC-Lint检查无错误无警告是代码首先要过的第一关,我个人觉得,对于小公司和个人开发而言,PC-Lint... [阅读全文]

什么是cbuilder:C++Builder软件动字幕

很多优秀的软件,在它的关于对话框中,右半部分有一个开发人员的动态字幕。利用C++ Builder可以方便地实现该功能:  创建一个新工程,在窗体Form1中添加一个Panel组件,将Caption属性清空,另外将Bevelinner和Bevelouter属性设置为Bvnone。选中Panel组件,在其中添加Label组件,将Caption属性清空,Autosize属性设置为True,Name属性设... [阅读全文]

内存参数详解:C++内存管理详解

 伟大Bill Gates 曾经失言:  640K ought to be enough for everybody — Bill Gates 1981   员们经常编写内存管理往往提心吊胆如果不想触雷唯解决办法就是发现所有潜伏地雷并且排除它们躲是躲不了本文内容比般教科书要深入得多读者需细心阅读做到真正地通晓内存管理  1、内存分配方式  内存分配方式有 3种:... [阅读全文]

垃圾回收方法:C++垃圾回收方法

许多 C 或者 C++ 程序员对垃圾回收嗤之以鼻,认为垃圾回收肯定比自己来管理动态内存要低效,而且在回收的时候一定会让程序停顿在那里,而如果自己控制内存管理的话,分配和释放时间都是稳定的,不会导致程序停顿。最后,很多 C/C++ 程序员坚信在C/C++ 中无法实现垃圾回收机制。这些错误的观点都是由于不了解垃圾回收的算法而臆想出来的。   其实垃圾回收机制并不慢,甚至比动态内存分配更高效。因为我们可... [阅读全文]

vc模拟键盘按键:模拟键盘按键 自动输入文字

模拟键盘按键 自动输入文字  键盘对于每个操作电脑人员来说是最熟悉不过了键盘上按键可分为两类 按下后会在电脑输入窗口上出现对应按键如字母键和数字键等我们称的为键;按下后虽然看不到但会产生控制作用按键如回车键、光标键等我们称的为控制键  对于员来说键盘上每个按键都样无非是区别按键产生键盘扫描码区别在区别操作系统下键盘扫描码常常被转换为区别编码以方便应用比如在DOS... [阅读全文]

vc检测内存泄漏:C/C++内存泄漏及其检测

  对于个c/c员来说内存泄漏是个常见也是令人头疼问题已经有许多技术被研究出来以应对这个问题比如Smart PoerGarbage Collection等Smart Poer技术比较成熟STL中已经包含支持Smart Poer但是它使用似乎并不广泛而且它也不能解决所有问题;Garbage Collection技术在Java中已经比较成熟但是在c/c领域发展并不顺... [阅读全文]

内存分配方法:C++内存分配的五种方法的不同

  在C中内存分成5个区他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区   栈就是那些由编译器在需要时候分配在不需要时候自动清楚变量存储区里面变量通常是局部变量、参数等   堆就是那些由分配内存块他们释放编译器不去管由我们应用去控制般个就要对应个delete如果员没有释放掉那么在结束后操作系统会自动回收   自由存储区就是那些由malloc等分配内存... [阅读全文]

内存参数详解:内存分配问题详解

 在嵌入式系统中使用C个常见问题是内存分配即对 和 delete 操作符失控   具有讽刺意味是问题根源却是C对内存管理非常容易而且安全具体地说当个对象被消除时它析构能够安全释放所分配内存这当然是个好事情但是这种使用简单性使得员们过度使用 和 delete而不注意在嵌入式C环境中因果关系并且在嵌入式系统中由于内存限制频繁动态分配不定大小内存会引起很大问题以及堆破... [阅读全文]

命令行结束进程:C++获取进程的命令行

思路方法 描述 GetName 以NULL作为参数 GetModuleBaseName 最后去掉扩展名 “.EXE” GetFileName 以NULL作为参数 GetModuleFileNameEx GetMainWindowHandle 参见GetMainWindowHandle GetMainWindowTitle ... [阅读全文]

内存分配访问无效:delete导致的内存分配问题

 作为忠告保守使用内存分配是嵌入式环境中第原则   但当你必须要使用 和delete时你不得不控制C中内存分配你需要用个全局 和delete来代替系统内存分配符并且个类个类重载 和delete   个防止堆破碎通用思路方法是从区别固定大小内存持中分配区别类型对象对每个类重载 和delete就提供了这样控制   重载全局 和delete 操作符   可以很容易地重... [阅读全文]

隐藏鼠标:隐藏计算机中的鼠标

、实现思路方法  Windows提供了个APImouse_event可以模拟次鼠标事件比如左键单击、双击和右键单击等在中使用此将产生个十分有趣效果所模拟鼠标事件将屏蔽真正鼠标事件我们例子也就是利用该这特性来实现隐藏中鼠标Mouse_event原型如下: VOID mouse_event( DWORD dwFlags, // flags specying var... [阅读全文]

vb中的通用对话框:对话框中的回车键

、实现思路方法  如果想要使回车键无效最简单思路方法是重载OnOK()这固然是个不坏主意但如果重载OnOK()让它什么事情也不干那么当用户用鼠标按下\"OK\"按钮想真正做些什么时候如何办呢?你可以改变回车键ID如:ID_MY_OK并写个EndDialog()处理器这个思路方法虽然也能行得通但显得有点不专业  另外种思路方法是\"disable\"回车键\"默认... [阅读全文]

基类可访问性低:访问模板化基类中的名字

  假设我们要写个应用它可以把消息传送到几个区别公司去消息既可以以加密方式也可以以明文(不加密)方式传送如果我们有足够信息在编译期间确定哪个消息将要发送给哪个公司我们就可以用个 template-based(模板基)来解决问题: CompanyA {public: ... void sendCleartext(const std::& msg); void... [阅读全文]

C++模板中分离出参数无关的代码

 templates(模板)是节省时间和避免代码重复极好思路方法不必再输入20个相似 es每个包含 15 个 member functions(成员)你可以输入个 template(类模板)并让编译器例子化出你需要 20 个 specic es(特定类)和 300 个( template(类模板) member functions(成员)只有被使用时才会被隐式... [阅读全文]

隐式接口:隐式接口和编译期多态

object-oriented programming(面向对象编程)世界是围绕着 explicit erfaces(显式接口)和 runtime polymorphism(执行期多态)为中心例如给出下面这个(没有什么意义) (类) Widget { public:  Widget;  virtual ~Widget;  virtual std::size_... [阅读全文]

虚成员函数:多态之虚成员函数调用

在构造中虚成员虽然这是个不很常用技术但研究下可以加深对虚机制及对象构造过程理解这个问题也和般直观上认识有所差异先看看下面两个类定义 struct C180{ C180 {  foo;  this-foo; } virtual foo {  cout \" C180.foo this: \" this \" vtadr: \" *(void**)this... [阅读全文]

多线程程序设计:多线程程序设计初步

 般情况下多线程编程多采用MFC类库实现那么如果不使用MFC 如何进行多线程设计呢?本文将就这个问题进行讨论:  微软在Windows API中提供了建立新线程CreateThread它语法如下: hThread = CreateThread (&security_attributes, dwStackSize, ThreadProc,pParam, dwFl... [阅读全文]

crc校验码:CRC校验码为BMP图设置水印

  2、 BMP位图内部结构  由于邮件接收方必须根据收到仅有个文件(此处为幅BMP位图)对其原始性做出判断那么用来标识该文件信息只有隐藏在该文件中才能被接收者识别出来而且该信息不能隐藏到文件内容信息区中(此处为位图点阵)如果这样话在设置印鉴同时就已经把原始内容破坏了文件也就失去了原始性了因此我们所设置印鉴水印必须设置到标识文件结构保留字段中所以在处理的前有必要... [阅读全文]

清除多余进程:彻底清除进程中Visual C++应用程序的方法

  、实现思路方法   在VisualC编程中最安全杀死进程思路方法是向运行主窗口发送WM_CLOSE消息其实现代码如下:   HWNDhwnd=this.m_hWnd;//获得主窗口   PostMessage(hwnd,WM_CLOSE,0,0);   发送此消息后通常应该等待直到进程确实终止当进程终止时它发出状态信号并且WaitForSingleObjec... [阅读全文]

c底层开发:对C++的底层机制的分析

c为我们所提供各种存取控制仅仅是在编译阶段给我们限制也就是说是编译器确保了你在完成任务的前正确行为如果你行为不正确那么你休想构造出任何可执行来 但如果真正到了产生可执行代码阶段无论是cc,还是pascal大家都样你认为c和c编译器产生机器代码会有所区别吗你认为c产生机器代码会有访问限制吗?那么你错了什么constprivate统统没有(const变量或许会放入... [阅读全文]

java中的string类:C++中string类的使用方法

如果所比较两个 相等则返回0; 操作 大于参数,返回 正数;操作 小于参数,返回负数 (1) 比较操作 和 _Str 或C- _Ptr compare( const basic _ & _Str ) const; compare( const value _ type* _Ptr ) const; com = s.compare ( sp ); (... [阅读全文]

导引术:C++资源之不完全导引

前言无数次听到“我要开始学习C!”呐喊无数次听到“C太复杂了我真学不会”无奈Stan Lippman先生曾在C Primer书中指出“C是最为难学高级设计语言的”人们常将“的”去掉以表达自己对C敬畏诚然C设计语言对于学习者确有很多难以逾越鸿沟体系结构庞大应接不暇并不断扩充特性……除此的外参考资料的多和冗杂使它学习者望而却步欲求深入者苦不堪言希望这份不完全导引能够... [阅读全文]

java字符串对比:对比C++和Java语言不同点

毕业的后直做Java应用很少接触C使用所以对C忘得很多了但还是觉得C在某些方面是不可替代最近又翻了下C书整理总结了些C和Java区别地方罗列下面个人理解必有不是和遗漏的处如发现请帮忙指出以改正 区别概述 Java C 面向对象特性 切皆是对象在Java中所有东西都在类中定义没有全局变量和思路方法没有联合枚举 面向对象和面向过程并集其可以含有非类属性... [阅读全文]

读写锁:在Windows实现C++锁的读写

=Code 有关在Windows实现C锁读写这样文章不多今天找到篇经典发上来给大家看看希望对大家有点帮助=Code// 个Windows下C读写锁代码实现共享读独占写 ReadWriteLock{public: m_currentLevel; m_readCount; HANDLE m_unlockEvent; HANDLE m_accessMutex;... [阅读全文]

使用vc6编译driver:VC6编译和链接问题

为了清空将debug目录删了结果编译时出如下: fatal error C1083: Cannot open precompiled header file: \\’Debug/xxx.pch\\’: No such file or directory 如何搞都不行 归结为同样问题: fatal error C1010: unexpected end of ... [阅读全文]

slab翻译:对slab内存管理源代码的说明

学习计算机原理最好是实战或看高手写源代码在定程度上就不再会感到原理抽象有关slab些原理资料可以在这里下载或到网站WebSite有更多信息和资料Slab内存管理机制已被广泛使用要找到使用slab管理内存开源代码也不难如些OS内核中内存管理既然要分析理解slab最好还是选择复杂度和代码量都不要太大在这里我选取了glib-2.12.9gslice.c实现slab机... [阅读全文]

java开发环境配置:配置WINDOWS下的C/C++开发环境全攻略

老早就想在WINDOW下搭建个环境来试试了但是处于某些原因直没能做完正好由于要写个编译器项目设计又不想到LINUX下去弄反正放假有时间就索性搏它搏弄了好长时间页面不断这东西也真不好弄资料也不是很多要不就是和自己情况不致经过笔者5个小时苦战终于完成了~~~ 言归正传对于开发工具就不介绍了不懂朋友可以到网上搜索下首先要用eclipse那就肯定跑不了JD... [阅读全文]
<< < 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 > >> 共1813条 分61页