c和c++
文章平均质量分 59
c和c++
1024个秘密
好好工作,好好学习,好好生活。
展开
-
C语言复习 第二波
C语言复习 第二波~一、数组1、数组定义int a = 10;int arr[10];//这种定义在C99下是合法的,只不过所有windows下的编译器都不支持,在gcc下可顺利执行。结果如右图: 2、数组指针和指针数组指针数组:指针数组可以说成是”指针的数组”,首先这个变量是一个数组,其次,”指针”修饰这个数组,意思是说这个数组的所有元素都是指针类型 。c原创 2017-07-13 16:28:42 · 241 阅读 · 0 评论 -
C语言复习 第一波 进制转换代码
一、参考书籍:《剑指offer》、《面试宝典》二、C语言部分1、进制问题(各进制之间的转换),注意,牵扯到位运算,都是基于二进制的,最好把位数写全。%x:十六进制打印 例:0x78%08x:十六进制八位打印 例:000000782、fopen和open的区别,fopen是C库函数中,open是系统调用。3、处理数字:一般套路是:%n,/=n; 函数:itoa函数原创 2017-07-10 18:49:34 · 463 阅读 · 0 评论 -
STL大总结~
一、STL主要包含:1、标准容器:(1)、顺序容器:vector【向量容器】、deque【双端队列容器】、list【双向链表容器】、(2)、关联容器:set【单重集合】、mutiset【多重集合】、map【单重映射表】、mutimap【多重映射表】(3)、容器适配器:stack【栈】、queue【队列】、prioriy_queue【优先级队列】2、近容器:char buff原创 2017-07-27 23:04:09 · 264 阅读 · 0 评论 -
STL之deque双端队列的实现
总结:deque的头插头删,尾插尾删还是比较快的,但是其他位置的删除和增加特别麻烦,它的查找速率较为缓慢,因为要遍历嘛。原创 2017-07-28 17:22:45 · 520 阅读 · 0 评论 -
指针和数组的区别
#include #include using namespace std;int main(){ char arr[] = "abcde"; cout<<&arr<<endl; char *brr = "abcde"; cout<<&brr<<endl; cout<<&("abcde")<<endl; cout<<sizeof原创 2017-07-18 15:44:48 · 211 阅读 · 0 评论 -
C++重点知识整理
一、指针和引用的区别1、32位平台下,指针是4个字节,而引用的字节数与其引用对象本身有关系。#includeusing namespace std;int main(){ int a = 10; char b = 'a'; int *p1 = &a; char *p2 = &b; int &q1 = a; char &q2 = b; cout<<sizeof(p1)<<原创 2017-07-18 15:46:09 · 3869 阅读 · 0 评论 -
const定义的变量,可以作为数组[ ]里面的值吗?
结论: 在c中是不可以的,在c++中可以。证明://const.cint main(){ const int a = 100; int arr[a];//error printf("%d\n",sizeof(arr)); return 0;}/*总结:在c中,const是指不能被改变的变量,占有存储空间,所以编译器并不知道编译时的值,所以原创 2017-07-18 15:31:47 · 7210 阅读 · 6 评论 -
海量数据处理~
海量数据,意思就是数据数量大,一般来说呢,就可以考虑哈希算法~那么,哈希算法是什么嘞?它也叫做散列函数,顾名思义,把一组数据散列开,常用的方法就是模值取余法,例如,一组数据{0,1,2,3,4,5,6,7},可以散列成三组{0,2,4,6},{}原创 2017-07-29 23:01:02 · 307 阅读 · 0 评论 -
指针和数组的区别
总结:1、基本概念: 数组:一个数组名就代表一个数组对象,这个对象内可以有一个或多个元素,每个元素类型都相同; 指针:而指针里一般存的都是地址值。2、赋值与访问:数组:对于数组来说,它的内存地址在编译的时候就已经确定了,可以直接给它赋值,当然也可以直接对它进行访问。指针:对于指针来说,先得得到指针里存放的地址值,然后向这个地址赋值;3、所占内存:数组:和它所存数据的原创 2017-06-13 20:16:12 · 411 阅读 · 1 评论 -
虚函数与虚表
一、虚函数:加virtual关键词的函数虚函数作用:C++中的多态,进行动态绑定(父类指针可指向子类的对象),直到运行时才知道要具体调用哪个版本(哪个类定义)的函数;它是通过虚表实现的,简单理解如下:代码分析:#includeusing namespace std;class Base{public: virtual void f() { cout原创 2017-06-09 19:22:08 · 368 阅读 · 0 评论 -
二维数组的创建
#includeusing namespace std;int main(){ //方式一:用new开辟 int **a = new int*[10]; for(int i=0;i<10;++i) { a[i] = new int[3]; } for(int i=0;i<10;++i) {原创 2017-06-01 17:19:11 · 304 阅读 · 0 评论 -
new和malloc区别
1、malloc/free是C/C++语言的标准库函数,new/delete是C++的运算符2、返回值不同,malloc申请失败返回空指针,而new申请失败则会抛出异常(这是因为new 内置了sizeof、类型转换和类型安全检查功能)。 void *malloc(long NumBytes):该函数分配了NumBytes个字节, 并返回了指向这块内存的指针。如果分配失败,则返回一个空原创 2017-05-31 17:39:58 · 353 阅读 · 0 评论