当前位置: 首页 > news >正文

笔试面试相关记录(4)

(1)实现防火墙的主流技术有哪些?

实施防火墙主要采用哪些技术 - 服务器 - 亿速云 (yisu.com)

(2)

char arr[][2] = {'a', 'b', 'c', 'd'};
printf("%d", *(arr+1));
输出的是谁的地址?字符c
测试代码如下
char arr[][2] = {'a', 'b', 'c', 'd'};
printf("%d\n", *(arr+1));
printf("%x\n", *(arr+1));
printf("%d  %c", &arr[1][0], arr[1][0]);输出结果如下:
-1454471282
a94e878e
-1454471282  c

(3)

int main()
{printf("%p", main);return(0);
}
上述代码会死循环吗?不会

(4)

int main()
{int a = 4;a += a*a<<1+2;printf("%d", a);return(0);
}
输出132,a = 4 + (4*4)<<(1+2) = 132
算数运算优先级大于移位运算符>赋值运算符

(5)如果两个动态库包含一个同名的全局函数,则他们不能同时链接?

C 多个动态库存在同名函数问题处理方法:-fvisibility=hidden_c语言库函数重名_万能菜道人的博客-CSDN博客 C/C++多个链接库含有同名函数,编译会报错吗_c 语言连接两个静态库方法一样没有报错_杰特JET的博客-CSDN博客

(6)

int main()
{int ii = 0;printf("%d,%d,%d", ++ii, ++ii, ++ii);return(0);
}
输出3,3,3

(7)

void fun(char a[100]) {char b[100];printf("%d, %d", sizeof(a), sizeof(b));
}int main()
{char a[100];fun(a);return(0);
}
64位系统中输出8,100

(8)内核空间和用户空间都属于虚拟内存空间吗?内核为系统所有进程共享吗?

虚拟内存、内核空间和用户空间_optics_ts的博客-CSDN博客 

linux虚拟内存与物理内存,内核态与用户态_物理内存被分为内核和用户?_selfsongs的博客-CSDN博客

(9)

union x{
int a;
char b[2];
}t;int main()
{t.b[0] = 10;t.b[1] = 1;printf("%d", t.a);return(0);
}
输出266

(10)

#include <iostream>using namespace std;class Base {virtual void method() {cout << "from Base" << endl;}
public:virtual ~Base() {method();}void baseMethod() {method();}
};class A : public Base {void method() { cout << "from A" << endl;}
public:~A() { method();}};
int main()
{Base* base = new A;// 基类指针调用非虚方法,则这里调用的是父类的baseMethod()方法// 父类方法中又调用了method(),而这个方法是虚方法,相当于指向子类的基类指针调用// method,发生多态,先调用子类的method方法,输出from Abase->baseMethod();// delete base,由于析构函数虚函数,所以会调用子类的析构函数输出from  A// 然后调用父类的析构函数输出from Basedelete base;return 0;
}测试输出:(以上是个人理解,不对之处,请指出)
from A
from A
from Base

(11)

int main()
{// 然后调用父类的析构函数输出from Basechar* str = "hello, world";str[1] = 'a';printf("%s", str);return 0;
}
段错误,通过char* str = 字符串这种方式定义的,字符串在常量区,不能原地修改。

C语言:字符串内容的修改_c语言修改字符串_不吃饭就会放大招的博客-CSDN博客

 (12)对文件的操作模式中,a和a+、w和w+、r和r+有什么区别

 r只读模式,文件必须存在;
r+读写模式,文件必须存在;
a追加模式,文件存在则追加,文件不存在则创建;
w写模式,文件存在则覆盖,文件不存在则创建;
w+读写模式,文件存在则覆盖,文件不存在则创建;
a+读写模式,和a一样;
如果以二进制模式,则rb+,或者r+b,

(13)

int main()
{char* p_string = "0123456789";printf("sizeof(p_string):%d\n", sizeof(p_string));printf("sizeof(*p_string):%d\n", sizeof(*p_string));printf("char:%c\n", *p_string);printf("p_string=%s\n", p_string);printf("strlen(p_string):%d\n", strlen(p_string));return 0;
}输出:
sizeof(p_string):8
sizeof(*p_string):1
char:0
p_string=0123456789
strlen(p_string):10

 (14)

int g_inta;
static int g_intb;
void fun() {static int intc;int intd;printf("%d,%d,%d,%d", g_inta, g_intb, intc, intd);
}
int main()
{fun();return 0;
}输出0,0,0,0

(15)

int main()
{char str[] = {'1', 49};printf("%d,%d,%c,%c", str[0], str[1], str[0], str[1]);return 0;
}
输出49,49,1,1

(16)

class A {
public:A() {cout << "A()" << endl;};A(int val) {cout << "A(int val)" << endl;}
};
int main()
{A a, b(3), *p;return 0;
}
输出
A()
A(int val)
调用两次构造函数

(17)

void fun(char* str) {str = (char*)malloc(10*sizeof(char));strcpy(str, "hello");}
int main()
{char* str = "world";fun(str);printf("%s\n", str);return 0;
}
输出world

(18)

int main()
{int val=100, *p=&val;printf("%d", *p);return 0;
}
输出100

(19)double(*(*(*fp)(int))[5])(char)  中定义的fp是什么类型?

以下来自chatgpt回答:

表达式 `double(*(*(*fp)(int))[5])(char)` 定义了一个名为 `fp` 的函数指针,该函数指针指向一个函数,该函数具有以下特征:

1. 接受一个 `int` 类型的参数。
2. 返回一个指向数组的指针,该数组包含5个元素。
3. 每个数组元素都是一个指向函数的指针,这些函数接受一个 `char` 参数并返回 `double`。

总的来说,`fp` 是一个指向复杂函数签名的函数指针类型。这种类型的声明可能在某些高级的应用中使用,但通常很难理解和维护,因为它包含了多层指针和函数指针的组合。

 

 单循环比赛生成网站:赢生科技 - 在线单循环赛编排 (16win.cn)

 单循环比赛的编排方法 - 知乎 (zhihu.com)

 

相关文章:

笔试面试相关记录(4)

&#xff08;1&#xff09;实现防火墙的主流技术有哪些&#xff1f; 实施防火墙主要采用哪些技术 - 服务器 - 亿速云 (yisu.com) &#xff08;2&#xff09; char arr[][2] {a, b, c, d}; printf("%d", *(arr1)); 输出的是谁的地址&#xff1f;字符c 测试代码如下…...

unity UDP 通信

客户端 接收端 &#xff1a; using System; using System.IO; using System.Collections; using System.Collections.Generic; using System.Net; using System.Net.Sockets; using System.Text; using System.Threading; using UnityEngine; using UnityEngine.UI;public cla…...

一篇解决JavaScript

华子目录 JavaScript介绍JavaScript的组成JavaScript书写位置内部外部 js注释js输入&#xff08;prompt&#xff09;js输出js变量js基本数据类型number&#xff08;数值类型&#xff09;string&#xff08;字符串&#xff09;Boolean&#xff08;布尔类型&#xff09;undefined…...

Unity UGUI(一)基础组件

文章目录 1.Text&#xff1a;文本框2.Image&#xff1a;精灵图3.RawImage&#xff1a;生图4.Button&#xff1a;按钮5.InputField&#xff1a;输入框6.Tooggle&#xff1a;选择框7.Slider&#xff1a;滑动条8.Dropdown&#xff1a;下拉菜单9.Scrollbar&#xff1a;滚动条10.Scr…...

【微服务】六. Nacos配置管理

6.1 Nacos实现配置管理 配置更改热更新 在nacos左侧新建配置管理 Data ID&#xff1a;就是配置文件名称 一般命名规则&#xff1a;服务名称-环境名称.yaml 配置内容填写&#xff1a;需要热更新需求的配置 配置文件的id&#xff1a;[服务名称]-[profile].[后缀名] 分组&#…...

【华为云云耀云服务器L实例评测|云原生】自定制轻量化表单Docker快速部署云耀云服务器

&#x1f935;‍♂️ 个人主页: AI_magician &#x1f4e1;主页地址&#xff1a; 作者简介&#xff1a;CSDN内容合伙人&#xff0c;全栈领域优质创作者。 &#x1f468;‍&#x1f4bb;景愿&#xff1a;旨在于能和更多的热爱计算机的伙伴一起成长&#xff01;&#xff01;&…...

无涯教程-JavaScript - ACOTH函数

描述 ACOTH函数返回数字的反双曲余切。 语法 ACOTH (number)争论 Argument描述Required/OptionalNumberThe absolute value of Number must be greater than 1. i.e., Number must be must be less than -1 or greater than 1.Required Notes 用于计算双曲反余切的方程为-…...

Qt QTreeWidge解决setItemWidget后,导致复选框失效

一、问题&#xff1a; QTreeWidget某一项加上itemWidget后&#xff0c;导致复选框失效问题 二、解决方法 将要加上的widget控件加到该项的后续的列&#xff0c;即控件跟复选框不同一列 三、具体代码 QTreeWidget* treeW new QTreeWidget; treeW->setColumnCount(2); /…...

strncpy

strncpy&#xff1a; 函数介绍&#xff1a; 函数原型&#xff1a; char *strncpy(char *dest, const char *src, int n) 返回值&#xff1a;dest字符串起始地址 说明&#xff1a; 1、当src字符串长度小于n时&#xff0c;则拷贝完字符串后&#xff0c;剩余部分将用空字节填…...

c++学习【23】matlab实现FOC算法

% 创建Figure窗口和滑块 figure;Id_slider uicontrol(Style, slider, Position, [100 50 120 20], ...Min, -5, Max, 5, Value, 1.5, Callback, updateVoltage); Id_text uicontrol(Style, text, Position, [100 80 120 20], String, d轴电流: 1.5);Iq_slider uicontrol(Sty…...

2020-2023中国高等级自动驾驶产业发展趋势研究-概念界定

1.1 概念界定 自动驾驶发展过程中&#xff0c;中国出现了诸多专注于研发L3级以上自动驾驶的公司&#xff0c;其在业界地位也越来越重要。本报告围绕“高等级自动驾驶” 展开&#xff0c;并聚焦于该技术2020-2023年在中国市场的变化趋势进行研究。 1.1.1 什么是自动驾驶 自动驾驶…...

ICPC 2022 网络赛 h (模拟

#include<bits/stdc.h> using namespace std; using VI vector<int>; using ll long long; const int mod 20220911;//枚举数位&#xff0c;枚举这一位余数是几 //每一位的限制&#xff0c; //如果有repeat 就下一个 int change(string x){int res 0 ;for(int …...

如何保护您的工业网络?

工业网络通过连接机器、设备和系统&#xff0c;在实现工业流程的高效生产、监控和管理方面发挥着关键作用。保护工业网络&#xff0c;确保其关键资产和流程的完整性、可用性和机密性&#xff0c;是工业组织的首要任务。在本文中&#xff0c;我们将探讨保护工业网络安全面临的障…...

Python之设计模式

一、设计模式_工厂模式实现 设计模式是面向对象语言特有的内容&#xff0c;是我们在面临某一类问题时候固定的做法&#xff0c;设计模式有很多种&#xff0c;比较流行的是&#xff1a;GOF&#xff08;Goup Of Four&#xff09;23种设计模式。当然&#xff0c;我们没有必要全部学…...

redis 多租户隔离 ACL 权限控制(redis-cli / nodejs的ioredis )

Redis 6版本之后&#xff1a;提供ACL的功能对用户进行更细粒度的权限控制 &#xff1a;&#xff08;1&#xff09;接入权限:用户名和密码&#xff08;2&#xff09;可以执行的命令&#xff08;3&#xff09;可以操作的 KEY ACL常用规则介绍&#xff1a; 指令列表 //增加可操…...

【算法专题突破】滑动窗口 - 找到字符串中所有字母异位词(14)

目录 1. 题目解析 2. 算法原理 3. 代码编写 写在最后&#xff1a; 1. 题目解析 题目链接&#xff1a;438. 找到字符串中所有字母异位词 - 力扣&#xff08;Leetcode&#xff09; 这道题很好理解&#xff0c;就是找出从不同位置开始的所有异位词。 2. 算法原理 那我们该如…...

C++生成-1到1的随机数

目录 一、方法一1、主要函数2、示例代码 二、方法二1、方法概述2、参考文献3、示例代码 三、方法三1、参考链接2、示例代码 本文由CSDN点云侠原创&#xff0c;原文链接。如果你不是在点云侠的博客中看到该文章&#xff0c;那么此处便是不要脸的爬虫。 一、方法一 1、主要函数…...

React-Hooks 和 React-Redux

注&#xff1a;Redux最新用法参考 个人React专栏 react 初级学习 Hooks基本介绍------------------------- Hooks&#xff1a;钩子、钓钩、钩住&#xff0c; Hook 就是一个特殊的函数&#xff0c;让你在函数组件中获取状态等 React 特性 &#xff0c;是 React v16.8 中的新增功…...

虚拟机下载与Ubuntu安装

下载VMware 进入官网资源 -> 产品下载 -> Desktop & End-User Computing选择 VMware Workstation Pro 这一栏&#xff0c;点击右边的下载产品&#xff0c;跳到新页面选择版本&#xff08;我选的是 16.0&#xff09;&#xff0c;然后点击下面对应系统的转至下载&…...

【小数点】C#使用Math.Round方法保留指定小数点位数,并且整数也同样保持统一的2位

2023年&#xff0c;第38周。给自己一个目标&#xff0c;然后坚持总会有收货&#xff0c;不信你试试&#xff01; 在实际开发项目中&#xff0c;特别是涉及金额之类的字段&#xff0c;一般都会用到小数&#xff0c;有些是保留1、2、3小数点。 本篇文章主要简单讲讲&#xff0c;如…...

大数据学习栈记——Neo4j的安装与使用

本文介绍图数据库Neofj的安装与使用&#xff0c;操作系统&#xff1a;Ubuntu24.04&#xff0c;Neofj版本&#xff1a;2025.04.0。 Apt安装 Neofj可以进行官网安装&#xff1a;Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战

前言 现在我们有个如下的需求&#xff0c;设计一个邮件发奖的小系统&#xff0c; 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式&#xff08;Decorator Pattern&#xff09;允许向一个现有的对象添加新的功能&#xff0c;同时又不改变其…...

在rocky linux 9.5上在线安装 docker

前面是指南&#xff0c;后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)

概述 在 Swift 开发语言中&#xff0c;各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过&#xff0c;在涉及到多个子类派生于基类进行多态模拟的场景下&#xff0c;…...

AtCoder 第409​场初级竞赛 A~E题解

A Conflict 【题目链接】 原题链接&#xff1a;A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串&#xff0c;只有在同时为 o 时输出 Yes 并结束程序&#xff0c;否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...

华为OD机试-食堂供餐-二分法

import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile&#xff0c;新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

SpringTask-03.入门案例

一.入门案例 启动类&#xff1a; package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)

在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马&#xff08;服务器方面的&#xff09;的原理&#xff0c;连接&#xff0c;以及各种木马及连接工具的分享 文件木马&#xff1a;https://w…...