C/C++
风之潇子
You never know what's behind the wall,so just try!
展开
-
虚函数和析构函数的区别
析构函数是在类对象消亡时由系统自动调用。主要用来做对象的清理工作,比如来释放对象申请的动态空间。基类中用virtual修饰的函数称为虚函数。在派生类中可以对虚函数进行重新定义,这样同样的函数接口可以在不同的派生类中对应不同的实现。当通过基类的指针来调用虚函数时,程序会根据指针实际指向的对象来决定调用哪个实现。原创 2014-06-24 23:09:48 · 865 阅读 · 0 评论 -
c、c++中的字符输入
c中:1、scanf("%c",a);//输入一个字符,a代表的是一个字符2、scanf("%s",a);//输入一个字符串,a代表的是一个字符数组的名字,不接受空格的3、getchar();//输入一个字符4、gets(a);//输入一个字符串,a代表的是字符串的名字,可以接搜空格的!c++中:1、cin>> 输入数字:以空格或转载 2014-06-23 02:05:48 · 665 阅读 · 0 评论 -
sizeof 和strlen的区别于联系
一、sizeof sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。 它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。 由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof来返回类型以及静态分配的对象、结构或数组所转载 2014-06-22 18:04:26 · 459 阅读 · 0 评论 -
字符串指针与字符数组的区别
用字符数组和字符指针变量都可实现字符串的存储和运算。但是两者是有区别的。在使用时应注意以下几个问题:1. 字符串指针变量本身是一个变量,用于存放字符串的首地址。而字符串本身是存放在以该首地址为首的一块连续的内存空间中并以‘\0’作为串的结束。字符数组是由于若干个数组元素组成的,它可用来存放整个字符串。2. 对字符串指针方式char *ps="C Language";转载 2014-06-22 18:00:41 · 402 阅读 · 0 评论 -
C++中delete和delete[]的区别
一直对C++中的delete和delete[]的区别不甚了解,今天遇到了,上网查了一下,得出了结论。做个备份,以免丢失。 C++告诉我们在回收用 new 分配的单个对象的内存空间的时候用 delete,回收用 new[] 分配的一组对象的内存空间的时候用 delete[]。 关于 new[] 和 delete[],其中又分为两种情况:(1) 为基本数据类型分配和回收空间;(2)转载 2014-07-04 16:46:33 · 384 阅读 · 0 评论 -
声明与定义&&赋值与初始化详解
转自:我想不管是现在学C系语言的人,还是学习Java等以及其他语言的人最初的入门语言应该都是C语言吧。C语言的难易程度是否适合作为编程入门语言我恐怕没有这个能量来论述一番。我想说的是C语言中的这几个名词(RT)自从最开始出现就一直萦绕在耳边,停留在口头上,但却又总是分不清,道不明的。最近几天搜集了一些这方面的文章与帖子来总结一下,总结是一项很好的学习方法,如果你能把你所学的东西转载 2014-07-02 16:26:08 · 487 阅读 · 0 评论 -
C++类中的访问权限问题
C++类中的访问权限问题---public/protected/private 2012-05-31 19:48:21| 分类: c++基础的东东 | 标签: |字号大中小 订阅C++中public,protected,private访问小结第一:private,public,protected方法的访问范围.(public继承下)private转载 2014-06-29 18:04:43 · 624 阅读 · 0 评论 -
VC中关于 0xcccccccc、0xcdcdcdcd和 0xfeeefeee 异常值说明
VC在调试时,可能会报“写入位置0xcccccccc 时发生访问冲突”,或者“写入位置0xcdcdcdcd 时发生访问冲突”,这些问题可能是由于使用了未初始化的指针引起的。 在 Debug 模式下,VC 会把未初始化的栈内存上的指针全部填成 0xcccccccc ,当字符串看就是 “烫烫烫烫……”,会把未初始化的堆内存上的指针全部填成 0xcdcdcdcd,当字符串看就是 “转载 2014-06-30 14:43:06 · 825 阅读 · 0 评论 -
C++内存分配秘籍—new,malloc,GlobalAlloc的区别与详解
转载此文前说两句:在C和C++语言的学习和使用中,尤其是科学计算编程中,内存的合理分配常常是一个很头疼的问题。你无法在你的程序中使用,例如double a这样的超大静态数组变量,因为这已经超出普通编译器默认的栈大小更或者会受到系统等因素的影响而无法使用,必须使用动态分配内存的技术,这样就可以不受限制了。(前提是系统内存足够)C++内存分配秘籍—new,malloc,GlobalAlloc详解转载 2014-06-25 13:52:41 · 468 阅读 · 0 评论 -
text段,data段,bss段,堆和栈
转自:http://blog.chinaunix.net/uid-29068482-id-4062780.htmltext段,data段,bss段,堆和栈一个程序一般分为3段:text段,data段,bss段text段:就是放程序代码的,编译时确定,只读。更进一步讲是存放处理器的机器指令,当各个源文件单独编译之后生成目标文件,经连接器链接各个目标文件并解决各个源文件之间函数的引用,与此转载 2014-08-14 10:08:12 · 726 阅读 · 0 评论