C/C++
文章平均质量分 81
进击的猿猴
武汉大学计算机学院
展开
-
cin、cin.get()、cin.getline()、gets()区别与用法
1、cin>> 最基本,也是最常用的用法,例如输入一个数字:#include using namespace std;main (){int a,b;cin>>a>>b;cout<<a+b<<endl;}输入:2[回车]3[回车]输出:5还可以接受一个字符串,但是遇“空格”、“TAB”、“回车”都结束#include us原创 2013-03-17 18:34:19 · 1388 阅读 · 0 评论 -
内存管理那些事
作者:寒小阳时间:2013年8月。出处:http://blog.csdn.net/han_xiaoyang/article/details/10676931。声明:版权所有,转载请注明出处,谢谢。七、内存管理 在写C/C++程序的时候,最头疼的部分一定包括内存管理,一提到内存管理总是提心吊胆,但是又不可避免地常常会遇到,而这块的知识也是公司招聘的一个评价转载 2014-04-22 11:58:46 · 612 阅读 · 0 评论 -
函数那些事
作者:寒小阳时间:2013年8月。出处:http://blog.csdn.net/han_xiaoyang/article/details/10539723。声明:版权所有,转载请注明出处,谢谢。六、函数那些事 函数是C++/C 程序的基本功能单元,当然是笔试面试重点考察内容。函数接口的两个要素是参数和返回值。C 语言中,函数的参数和返回值的传递方式转载 2014-04-22 11:57:25 · 551 阅读 · 0 评论 -
atoi和itoa函数的实现
搜集了很多资料,发现有很多写法,原创 2014-04-22 20:59:05 · 766 阅读 · 0 评论 -
strcpy,strncpy,memcpy,memset的实现
面试官很喜欢让求职者写一些常用库函数的实现,有很多是和字符串相关的,有一些是关于内存拷贝的。一般,常会让写的函数有以下几个:strcpy , strncpy, memcpy。memset一般不会让去写,但这个函数也很有特点,有很多容易用错的地方。一并总结吧。1. strcpystrcpy函数的原型是:char * strcpy(char* dest, co转载 2014-04-22 21:26:27 · 1124 阅读 · 0 评论 -
C/C++基础题
这一部分是C/C++程序员在面试的时候会被问到的一些题目的汇总。来源于基本笔试面试书籍,可能有一部分题比较老,但是这也算是基础中的基础,就归纳归纳放上来了。大牛们看到一笑而过就好,普通人看看要是能补上一两个模糊的知识点,也算有点进步吧。1.简述变量声明和定义的区别。 为变量分配地址和存储空间的称为定义,不分配地址的称为声明。一个变量可以在多个地方声明,但是只在转载 2014-04-22 12:03:30 · 941 阅读 · 0 评论 -
构造函数、析构函数与赋值函数
类的构造函数、析构函数与赋值函数 学过C++的人都说自己知道构造函数、析构函数与赋值函数。它们看似太普通,以致让人容易麻痹大意,但请你认真读完这部分内容,你会发现这些貌似简单的函数实则像没有顶盖的下水道那样危险。 每个类只有一个析构函数和一个赋值函数,但可以有多个构造函数(包含一个拷贝构造函数,其它的称为普通构造函数)。对于任意一个类A,如果不想编写上述函数,C转载 2014-04-22 12:01:06 · 634 阅读 · 0 评论 -
C++高级特征
作者:寒小阳时间:2013年9月。出处:http://blog.csdn.net/han_xiaoyang/article/details/10827689。声明:版权所有,转载请注明出处,谢谢。C++函数的高级特征 重载(overloaded)、内联(inline)、const 和virtual是C++独有而C不具有的四种机制。其中重载和转载 2014-04-22 11:59:50 · 647 阅读 · 0 评论 -
string赋值运算符、复制构造函数等实现
本题来源于《剑指oOfer》24页,面试题1:赋值运算符函数,主要实现一个简单的stringleiu原创 2014-04-16 22:36:12 · 926 阅读 · 0 评论 -
C语言~和>>运算符
#include int main() { unsigned char a = 0xA5; unsigned char c = ~a; unsigned char b = c >> 4; printf("b=%d/n", b); return 0; }转载 2014-04-15 12:56:55 · 989 阅读 · 0 评论 -
(int)a、&a、(int)&a、(int&)a的区别
#include #include #include #include using namespace std; int main() { float a = 1.0f; cout << sizeof(int) <<endl; //4 cout << sizeof(float) <<endl; //4 cout <转载 2014-04-15 11:02:45 · 743 阅读 · 0 评论 -
C++中头文件string 和 string.h的区别
头文件string与string.h的区别在C++中,#include与#include的区别,前者要使用更新的编译器(其实大部分编译器多比较前卫了,出了有些搞嵌入式的用变态的编译器)。喔,原来iostream是C++的头文件,iostream.h是C的头文件,即标准的C++头文件没有.h扩展名,将以前的C的头文件转化为C++的头文件后,有时加上c的前缀表示来自于c,例如cmath就是转载 2013-09-04 18:00:39 · 2181 阅读 · 0 评论 -
C++左值右值引用
C++ 11中引入的右值引用正好可用于标识一个非常量右值。C++ 11中用&表示左值引用,用&&表示右值引用,如:int &&a = 10右值引用根据其修饰符的不同,也可以分为非常量右值引用和常量右值引用。C++ 11中引入的一个非常重要的概念就是右值引用。理解右值引用是学习“移动语义”(move semantics)的基础。而要理解右值引用,就必须转载 2013-09-10 19:14:10 · 1217 阅读 · 1 评论 -
new/delete和malloc/free的区别
(前言:malloc/free是C语言用于动态分配和释放内存的函数,new/delete则是C++中新引入的(但却依然保留了C里面的malloc/free),两者在一般情况下作用相同,但是在处理某些非内部数据类的对象时,new/delete有很大的优势,下面的总结很详细,转载……)一、相同点:都可用于申请动态内存和释放内存二、不同点:(1转载 2013-03-23 20:34:22 · 703 阅读 · 0 评论 -
C/C++内存分配原理(堆、栈、静态区)
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap)一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。3、全局区(静态区)(sta转载 2013-03-23 19:04:02 · 1957 阅读 · 0 评论 -
几个常用的C++头文件
最近在九度OJ刷考研机试题,题目不难,可是有时Judge会提示未包含某些头文件,虽然在本地VS2010可以运行,可是提交后还是会出问题。常用的几个头文件有iomanip,stdlib,math.h(cmath)等。根据网上相关资料,总结如下:1.iomanip #include iomanip的作用比较多,主要是对cin,cout之类的一些操纵运算子,比如setfill,原创 2013-03-17 23:26:44 · 2145 阅读 · 0 评论