一些面试题

一、Linux相关

1.如何查看cpu个数、cpu核数

linux下与cpu相关的信息存放在:/proc/cpuinfo

查看物理cpu个数(cpuinfo里面列出了不同cpu的id和描述,因此需要排序在uniq):

cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l

查看单个cpu核数:

cat /proc/cpuinfo | grep "cores" | uniq

2.如何linux内核版本

cat /proc/version

二、基础相关

1.浮点数如何比较大小?

因为计算机表示小数的方式是有精度限制的,因此不能直接比较两个浮点数相等(==)或者不等(!=)。只能通过判断两个浮点数差值的绝对值是否小于某个可以接受的误差值来判断两个浮点数是否近似相等。

2.空指针、空悬指针、野指针的区别?

空指针:指针为NULL或者为0的指针;

空悬指针:指针所指向的内存已被释放。

野指针:未经初始化的指针即指针所指向的区域未知。

3.什么是线程安全?(什么是线程安全的类)

当多个线程同时访问该类时,或者不论操作系统如何调度这些线程访问类,类都表现出正常的行为。且调用端不需要做额外的同步操作。

4.为什么要内存对齐?

5.编译器的作用?

原文地址:https://www.cnblogs.com/jialin0x7c9/p/12099542.html