c和c++
u010296036
这个作者很懒,什么都没留下…
展开
-
数组首地址与数组首元素首地址
二者并不是一个概念! 举个例子: int a[] = {1,2,3,4,5}; a作为右值时,意义同&a[0]。即数组首元素首地址; &a[0],数组首元素首地址 &a,数组首地址 ...原创 2019-03-26 09:43:07 · 2643 阅读 · 0 评论 -
C/C++常见面试题整理---语言基础知识部分
指针和引用的区别 指针指向一块内存,它的内容是指向内存的地址;引用是某内存的别名。 引用使用时无需解引用;指针则需要解引用。 引用不能为空,指针可以为空。 引用在定义时被初始化一次,之后不可再改变;指针可变。 程序为指针变量分配内存区域,而引用不需要分配内存区域。 memcpy和strcpy的区别 memcpy用来进行内存拷贝,有指定的拷贝数据长度,可拷贝任何数据类型的对象。strcpy只能拷...原创 2019-03-26 10:00:17 · 189 阅读 · 0 评论 -
链接器如何解析多重定义的全局符号
链接器的输入是一组可重定位目标模块。每个模块定义一组符号,有些是局部的(对定义该符号的模块可见),有些是全局的(对其他模块也可见)。如果多个模块定义同名的全局符号,则Linux会这么处理: 函数和已初始化的全局变量是强符号,未初始化的全局变量是弱符号。 不允许有多个同名的强符号,如函数名和已初始化全局变量名相同等;如果存在这种情况就会报错。 如果有一个强符号和多个弱符号同名,则选择强符号。 ...原创 2019-03-26 10:06:41 · 489 阅读 · 0 评论