看企鹅编程网
    首页 Linux C/C++ C++面试 Qt答疑 Qml中文手册 Qt CMake Python 工具
C++面试
C++面试

strcpy库函数的实现细节

【考点】 strcpy库函数的实现细节 出现频率:★★★★★ 【解析】 这个题目非常简单。我们知道字符串是以10作为结束符的,所以只需要做一次遍历就可以了。但是需要注意的是,要尽量把程序写得简单且效率高。看下面的示例代码: #include <stdio.h> #include <assert.h> int strlent1 (const char* src) { assert ( NULL I = src ); //src必须有效 int len = 0; //保存src的长度 while […]

2020年10月14日 6点热度 0人点赞 阅读全文
C++面试

 strcpy与memcpy的区别

【考点】 字符串复制与内存复制之间的区别 出现频率:★★★★ 【解析】 主要有下面几方面的区别。 1:复制的内容不同。strcpy只能复制字符串,而memepy可以复制任意内容,例如字符数组、整型、结构体、类等。 2:复制的方法不同。strcpy不需要指定长度,它是遇到字符串结束符10而结束的。memcpy则是根据其第三个参数决定复制的长度。 3:用途不同。通常在复制字符串时用strcpy;而若需要复制其他类型数据,则一般用memcpy .

2020年10月14日 4点热度 0人点赞 阅读全文
C++面试

C/C++使用库函数将字符串转换为数字

【考点】 C语言库函数中字符串转换为数字的使用 出现频率:★★★★ 【解析】 与上题数字转换为字符串类似,C/C++提供了几个标准库函数,可以将字符串转换为任意类型(整型、长整型、浮点型等)的数字。下面列举了各函数的方法及其说明。 1: atof():将字符串转换为双精度浮点型值。 2: atoi():将字符串转换为整型值。 3: atol():将字符串转换为长整型值。 4: strtod():将字符串转换为双精度浮点型值,并报告不能被转换的所有剩余数字。 5:strtol():将字符串转换为长整型值,并报告不能被 […]

2020年10月14日 4点热度 0人点赞 阅读全文
C++面试

对于Windows句柄的理解及其与一般指针的区别

【考点】 对于Windows句柄的理解及其与一般指针的区别 出现频率:★★★★ 【解析】 指针对应着一个数据在内存中的地址,得到了指针就可以自由地修改该数据。 Windows并不希望一般程序修改其内部数据结构,因为这样太不安全。所以Window给每个使用GlobalAlloc等函数声明的内存区域指定一个句柄,句柄是一种指向指针的指针。 句柄和指针都是地址,不同之处在于: (1)句柄所指的可以是一个很复杂的结构,并且很有可能是与系统有关的。比如说线程的句柄,它指向的就是一个类或者结构,它和系统有很密切的关系。当一个线 […]

2020年10月14日 4点热度 0人点赞 阅读全文
C++面试

对于Windows句柄的理解

【考点】 对于Windows句柄的理解 出现频率:★★★ 【解析】 句柄在Windows编程中是一个很重要的概念,在许多地方都扮演着重要的角色。在Windows环境中,句柄是用来标识项目的,这些项目包括: 模块(module)。 任务(task)。 实例(instance)。 文件(file) 内存块(block of memory)。 菜单(menu)。 控制(control)。 字体(font)。 资源(resource),包括图标(icon)、光标(cursor)、字符串(string)等。 GDI对象(GD […]

2020年10月14日 6点热度 0人点赞 阅读全文
C++面试

静态存储区、栈、堆的内存分配

【考点】 静态存储区、栈、堆的内存分配 出现频率:★★★★★  【解析】 (1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在,例如全局变量。 (2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。处理器的指令集中有关于栈内存的分配运算,因此效率很高,但是分配的内存容量有限。 (3)从堆上分配,亦称动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用free或delete释放 […]

2020年10月13日 6点热度 0人点赞 阅读全文
C++面试

C语言的各种标准内存分配函数的使用

【考点】 C语言的各种标准内存分配函数的使用 出现频率:★★★ 【解析】 C语言的标准内存分配函数:malloc、calloc、realloc、free等。 malloc与calloc的区别为1块与n块的区别。 1: malloc的调用形式为(类型*)malloc(size):在内存的动态存储区中分配一块长度为“size”字节的连续区域,返回该区域的首地址,此时内存中的值没有初始化,是个随机数。 2: calloc的调用形式为(类型*)calloc(n,size):在内存的动态存储区中分配n块长度为“size”字节 […]

2020年10月13日 4点热度 0人点赞 阅读全文
C++面试

“野指针”是什么以及它的作用

【考点】 “野指针”是什么以及它的作用 出现频率:★★★★ 【解析】 “野指针”不是NULL指针,而是指向“垃圾”内存的指针。人们一般不会错用NULL指针,因为用if语句很容易判断。但是“野指针”是很危险的,if语句对它不起作用。 “野指针”的成因主要有两种: 1:指针变量没有被初始化。任何指针变量刚被创建时不会自动成为NULL指针,它的默认值是随机的,它会乱指一气。所以,指针变量在创建的同时应当被初始化,要么将指针设置为NULL,要么让它指向合法的内存。 2:指针p被free或者delete之后,没有置为NULL […]

2020年10月13日 6点热度 3人点赞 阅读全文
C++面试

数组指针与函数指针的定义

【考点】 数组指针与函数指针的定义 出现频率:★★★ 定义下面的几种类型变量: a.含有10个元素的指针数组 b.数组指针 c.函数指针 d.指向函数的指针数组 【答案】 a.int*a[10]; b.int*a=new int[10]; c.void(*fn)(int,int); d.int(*fnArray[10])(int,int);  

2020年10月12日 6点热度 0人点赞 阅读全文
C++面试

函数指针与指针函数的区别

【考点】 函数指针与指针函数的区别 出现频率:★★★★★   【解析】 指针函数是指带指针的函数,即本质是一个函数,并且返回类型是某一类型的指针。 其定义如下: 返回类型标识符*返回名称(形式参数表){函数体} 事实上,每一个函数,即使它不带有返回某种类型的指针,它本身都有一个入口地址,该地址相当于一个指针。比如函数返回一个整型值,实际上也相当于返回一个指针变量的值,不过这时的变量是函数本身而已,而整个函数相当于一个“变量”。 函数指针是指向函数的指针变量,因而它本身首先应是指针变量,只不过该指针变量指向函数。有了 […]

2020年10月12日 4点热度 0人点赞 阅读全文
12345
关注公众号

日历
2023年3月
一 二 三 四 五 六 日
« 7月    
 12345
6789101112
13141516171819
20212223242526
2728293031  
最新 热点 随机
最新 热点 随机
四柱排盘系统--阳历转农历 四柱排盘系统--命理学和程序开发的相互结合 windows中出现"无法解析的外部符号"到底是什么原因 Qt5中lambda表达式用法,非常实用 warning: class 'InterFace' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator 无法解析的外部符号 "public: static struct QMetaObject const
QT之qmake介绍 QT中如何获取本机mac地址和ipv4地址 Python3 实现DNN功能【详】 QML信号处理程序中的JavaScript(JavaScript in signal handlers) opencv系列2--矩阵的掩膜操作 单例模式_设计模式(Qt开发环境)
标签聚合
Linux C/C++面试 C++ qmake qml中文文档 Qt openCv qml中文手册

COPYRIGHT © 2015-2021 倒头企鹅编程网. ALL RIGHTS RESERVED.

苏ICP备12059464号-2