1.变量的声明何定义有什么区别 变量的定义为变量分配地址和存储空间,变量的声明不分配地址。一个变量可以在多个地方声明,但是只在一个地方定义。同时加入extern修饰的变量的声明,说明此变量将在文件以外或在文件后面部分定义。说明-很多时候一个变量,只是声明不分配内存空间,直到具体使用时才初始化,分配内存空间,如外部变量。 int main() { extern int A; //这是个声明而不是定义,声明A是一个已经定义了的外部变量 //注意...
网络编程(金山) 1. 简述Tcp三次握手和四次挥手。(金山WPS) 看我的文章:握手挥手详解 2. 基本I/O模型了解多少。(金山WPS) 游双《高性能服务器编程》第八章8.3节,p126-127页 认真看链接里面的两篇解析,是对上面内容的补充:阻塞非阻塞和同步异步 比较高深的解释:阻塞非阻塞和同步异步 我理解:阻塞非阻塞IO是从时间上来看的,甲方请求,乙方立刻应答,或者乙方不能处理,甲方立刻转身走,对于甲方来说,它就是非阻塞;甲方...
转载自:http://www.linya.pub/ Bookmarks 高并发系统之限流特技动态链接库中函数的地址确定---PLT和GOTLinux 中的各种栈:进程栈 线程栈 内核栈 中断栈Redis和Memcached的区别epoll内核源码详解+自己总结的流程后台开发面试问题整理Linux内核:poll机制linux任务调度机制Linux内核:poll机制解读Raft(一 算法基础) - 杭州.Mark - 博客园Linux文件系统详解 - AlanTu - 博客园Linux c 开发 - 内存管理器ptmalloc - CSDN博客Linux环...
C语言和C++语言区别和联系 C语言和C++语言的联系: C++是C语言的超集,两者拥有类似的语法 C语言和C++语言的区别: C是面向过程的语言,而C++是面向对象的语言C和C++在动态分配内存方面存在差异,C使用malloc/free函数,而C++使用除此之外还有new/delete关键字C语言中没有class,只有struct;C++中两者都有。class的默认访问修饰符是private,而struct是publicC++支持函数重载,而C不支持函数重载,这是由于两者的名字修饰不同C++有...
?1、.C++里面如何声明constvoidf(void)函数为C程序中的库函数? 正确答案: 在该函数前添加extern “C”声明。由于编译后的名字不同,C++程序不能直接调用C 函数。 2、c++中类和c语言中struct的区别(至少两点) 正确答案: (1)c++中的类默认的成员是私有的,struct默认的是共有的。 (2)c++中的类可以定义成员函数,struct只能定义成员变量。 (3)C++中的类有继承、多态的特性,struct没有。 3、IP组播有那些好处? 正确答...
题目描述 3.实现一个将字符串按指定字符分隔的函数,形式已经确定如下,请完成标有“//请补充”的内容。 说明:返回值为是否找到分割符(true找到,false未找到),当未找到分割符时返回原字符串。 举例:SplitStr("abc|bc|c", '|', vect) 返回true, vect结果:abc, bc, c SplitStr("abc|bc|c", 's', vect) 返回false, vect结果:abc|bc|c SplitStr("|bc|c", '|', vect) 返回true, vect结果:空字符串, bc, cbool SplitStr(const c...
不严谨之处较多,欢迎大佬指正,在学习的路上不断狂奔比如面试官问了一个多态问题,然后就可以针对多态这个问题适当展开,不至于问你一个就回答这一个问题,无法完全展示自己技能,适当的展开可以为面试加分哟开始:多态分为静态多态、动态多态。静态多态,重载,就是在同一作用域内,函数名相同,参数不同,根据参数来确定调用。动态多态,重写,主要是虚函数,父类指针指向子类对象,接着再用指针调用被重写函数。一个类有虚函数...
clude<iostream>//const 的本质是防止误操作 /* * 1.用const修饰函数的参数 * 2.用const修饰函数的返回值 * 3.const成员变量 * 4.const成员函数 * 5.const修饰指针 */using namespace std;//1.用const修饰函数的参数void myPrintf(const int num) {int a = 5;//num = 5; //报错//num = a; //报错const int b = 6; //定义const变量的时候必须赋初始值cout << num << endl; }// 2.用const修饰函数的返回值 //如果给以“指针传递...
目录 1、C和C++的区别2、C++中指针和引用的区别3、结构体struct和共同体union(联合)的区别4、#define和const的区别5、重载overload,覆盖override,重写overwrite,这三者之间的区别6、new、delete、malloc、free之间的关系7、delete和delete[]的区别8、STL库用过吗?常见的STL容器有哪些?算法用过几个?9、const知道吗?解释一下其作用10、虚函数是怎么实现的11、堆和栈的区别12、关键字static的作用13、STL中map和set的原理(...
本文列出C++面试中经常遇到的一些问题,都是一些常见的面试考点,如果后续遇到其他常见面试问题还会再次更新。希望对近期参加面试的同学有一些帮助。先后顺序与问题的重要性无关,查看的时候,最好是全面了解一下。 C++语言基础、语言特性、数据结构、操作系统知识甚至是一些内核相关的知识、网络相关知识、数据库操作、多线程多进程数据同步互斥、内存相关知识等等。 1、关键字及基本问题 const的作用,const怎么使用,有哪些应用...
5:如何引用一个已经定义过的全局变量?区别是什么 如果在同一个文件中,直接引用即可。 如果不在同一个文件,有两种方式: (1)直接引用头文件就可以使用了。 (2)用extern关键字重新声明一下。 10:main 主函数执行完毕后,会执行什么代码? 可以,使用on_exit 注册的函数会在代码执行完毕后执行:#include<stdio.h>int fn1();void main( void ){ on_exit(fn1); printf("This is executed first.\n" ); }int fn1(){printf("n...
1.new、delete、malloc、free关系 delete会调用对象的析构函数,和new对应free只会释放内存,new调用构造函数。malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,...
一、1byte = 8bit;1k = 1024byte;1M = 1024K;1G = 1024M; 二、三、sizeof(struct)唯一原则就是按照计算机内存访问最快的方式对齐。各成员变量存放的 起始地址相对于结构的起始地址的偏移量必须为该变量的类型所占用的字节数的倍数;总的字节数一定是最大字节数的整数倍。 (1)数组名指代一种数据结构,这种数据结构就是数组; 例如: 1 2char str[10]; cout?<<?sizeof(str)?<<?endl;输出结果为10,str指代数据结构c...
1 #include<iostream>2 //#include<ostream>3 //class ostream;4 class string5 {6 public:7 //constructor8 string(const char* str=nullptr);9 //copy constructor 10 string(const string&); 11 //assign operator 12 string& operator=(const string& rhs); 13 //deconstructor 14 ~string(); 15 16 friend std::ostream& operator<<(std::ostream & os, string &str); //友元函数...
记:此篇博客是关于考研复试中专业课面试的相关知识点,按个人理解以及网上查资料来总结的,用来锻炼自己的逻辑思维,可能不太准确,希望指正。 1、什么是虚函数和纯虚函数? 基类指针可以指向其公有派生类对象,但当用基类指针访问其指向的派生类对象时只能访问该派生类从基类继承而来的对象而不能访问该派生类中定义的对象,此时就需要虚函数来解决这个问题。 虚函数是在基类中用virtual关键字说明并在派生类中被重新定...