Interview:人工智能岗位—校招真题—算法工程师(计算机视觉方向)选择题——C++语言、sql语言编程相关习题的部分笔记
Interview:人工智能岗位—校招真题—算法工程师(计算机视觉方向)选择题——C++语言、sql语言编程相关习题的部分笔记
目录
指针相关
1、已知int a[]={1,2,3,4,5};int*p[]={a,a+1,a+2,a+3};int **q=p;表达式*(p[0]+1)+**(q+2)的值是
解析:其中p[0]=a也就是a[0],p[0]+1=a+1,*(p[0]+1)即是a[1]的地址,其值就是2。
**q=p 表示q保存的是p的地址,q+2表示p[2]的地址;*(q+2)表示p[2],而**(q+2)表示*p[2],即表示*(a+2)就是a[2]的值就是3,
故:*(p[0]+1)+**(q+2)=2+3=5
知识补充:int是整型类型,存放比如1,2,3,4,5这些数字;而int*就是一个整型的指针类型,是存放一个地址,但是这个地址指向整型的地址。
2、下面代码在64位Linux系统编译执行,输出结果是40 8
#include <stdint.h>
#include <stdio.h>
void print_size(int32_t array[10]){
printf("%d\n", sizeof(array));
}
int main () {
int32_t myArray[10];
printf("%d ", sizeof(myArray));
print_size(myArray);
}
解析:
sizeof(数组名),返回的整个数组占据的字节数。在这里,数组长度为10,每个4字节,所以,总共40字节。
在64位操作系统中,地址为64位,也就是指针64位,占8字节。
通过函数调用后,数组名退化成指针,占8字节。
sql语言
1、如下SQL语句中,____可能返回null值。
(1) select count(*) from t1; #返回的是表的行数,如果没有记录,应该返回0,不会出现NULL,
(2) select max(col1) from t1; #如果表里面没有记录,则会出现NULL
(3) select concat('max=',max(col1)) from t1; #如果表里面没有记录,则会出现NULL
解析:只有(1)不对!
相关文章
- C++学习——c++逗号操作符说明(附加全部运算符优先级)
- EasyC++23,if语句
- EasyC++24,逻辑表达式
- c++创建对话框_窗体边框改为对话框样式
- C++基本概念_c语言 c++区别
- C++结构体和类的区别_c++有结构体吗
- notepad++一键编译运行C or C++ (MinGW编译器)
- C++多态
- 【C++】string类的模拟实现
- c++基础篇之C++ 模板
- Linux老是提示compat-libstdc++ is not installed的原因详解程序员
- C++中的类型转换方法详解编程语言
- C++ 类中特殊的成员变量(常变量、引用、静态)的初始化方法详解编程语言
- C++11多线程编程详解
- C++ 自定义比较函数(map和multimap)详解
- C++之友元:友元函数和友元类详解
- c++获取进程信息列表和进程所调用的dll列表