指针 语言 结构
7 结构伪类选择器
![](https://img2023.cnblogs.com/blog/3071897/202309/3071897-20230918162847833-1625296702.png)![](https://img2023.cnblogs.com/blog/3071897/202309/30718... ......
虚函数指针和虚表
虚函数指针是一个指向指针数组(定义类对象时, 编译器自动将类对象虚函数指针指向这个虚函数表)的void类型的指针(void**),虚表是一个一维数组,无论是类指针还是类引用还是实例化base1,base2它们只有一个虚函数指针和一个虚函数表,也就是说虚函数指针和虚函数表是属于类的(也就是被所有对象共 ......
记第一节C语言实验课
时间 2023.9.18 上午 C语言机房第一次实战 实验: 实验过程: 将文档里代码完整粘贴到VS2022, 发现主函数main没有设置类型以及(),大括号里没有返回值, pi的数值类型为double类型而非int printf括号里缺少双引号 scanf返回值未处理,数值类型不对,应为&r 体积 ......
网络协议的重要性与应用:理解进程间通信和网络分层结构(下)
这篇文章概括了数据链路层和物理层在网络通信中的作用和功能。数据链路层负责为网络层提供链路级别的传输服务,通过MAC地址标识设备,并在链路上进行数据传输。物理层将数据包转换为电信号,在物理媒介中传输。不同的物理媒介包括双绞铜线、同轴电缆和光纤,它们都被用于实现高效的数据传输和通信。 ......
MySQL篇:第五章_详解DDL语言
DDL语句 库和表的管理 库的管理: 一、创建库 create database 库名 二、删除库 drop database 库名 表的管理: 1.创建表 CREATE TABLE IF NOT EXISTS stuinfo( stuId INT, stuName VARCHAR(20), gen ......
编程语言中:什么是方法?方法应该怎么拆分?
在一个群聊里面,无意间听到很多人说不知道应该怎么去拆分方法,总是写出一个大的方法体。其实这个和编程思想有关系。 在这里草草的给他们写一下说明,其他东西也不展开说了。 ......
数据结构学习记录(三)
图 一、知识要点 1、图的基本概念 图的定义和术语 图的定义 图(Graph)是由两个集合构成,一个是非空但有限的顶点集合V,另一个是表述顶点之间边的集合E(可能是$\emptyset$)。图可表示为G = (V ,E ). 每条边是一顶点对(v, w)且v,w $\in$ V。通常用|V|表示顶点 ......
C++指针详解
目录概述一、指针是什么?二、变量在内存中的存储三、指针对象(变量)1、定义指针对象2、获取对象地址3、解析地址对象4、指针值的状态5、指针之间的赋值四、指针内含信息1、void*指针五、指针的算数运算六、函数和指针1、函数的参数和指针2、函数的指针3、返回值和指针七、const与指针1、常量指针2、 ......
图解 LeetCode 算法汇总——双指针
双指针算法是一种比较常用于搜索链表或数组相关的问题,很多算法的基本的解题思路就是使用暴力搜索法。而双指针是对暴力搜索的一种优化,通过双指针可以减少数据的遍历次数。通常双指针是有两个指针,叫做 light 左指针和 right 右指针,或者叫做快指针和慢指针。 作为左右指针的话,一般是在数组的或者链表 ......
选择结构与反编译
选择结构与反编译 顺序结构 这个很好理解,就是java中在没有其他干扰的情况下默认自上到下执行 if选择结构 if双选择结构(单选择就是不要else) /语法结构/ if(布尔表达式(也就是什么什么等于true,等于true可省)){} equals可用于判断字符串是否相等 下为代码示意图 if多选 ......
计算机体系结构之流水线
一、引入流水线 某厂要生产一件产品,从组装、打螺丝、密封、打包都由一个人完成,一小时过去了这个人还在打螺丝,老板看不下去了,心想不能全靠一个人,这样公司就干不下去了,所以老板就招了4个人,让这个人带。并且给这个人涨了工资。一个月之后这个人把那4个人全部教会了。老板就叫那个人去人事处领工资走人了(你懂 ......
SK 简化流行编程语言对 生成式AI 应用开发的支持
Semantic Kernel[1] 是一个将大型语言模型(LLM)与流行的编程语言相结合的SDK。 Microsoft将Semantic Kernel(简称SK)称为轻量级SDK,支持AI LLM的集成。 Microsoft今年3月份时候首次开源了SK,SK不仅支持C#、还支持Java和 Pyth ......
函数指针与指针函数
int* test(int a, char b) { printf("%d\n", a); } void test1(int a) { printf("%d\n", a * a); } void test2(int a) { printf("%d\n", a * 5); } int main() { ......
02指针篇
指针数组 #include <stdio.h> int main() { static char *s[]={"black","white","pink","violent"};//指针数组4个元素分别为4个字符串地址 char **ptr[]={s+3,s+2,s+1,s};//指针的指针,分别保 ......
Java数据结构的学习规划
前言 最近在备考软考初级程序员(因为没有把握能够过中级所以暂时先报考初级)所以暂时停下了数据结构学习的进程。但是看到老师布置的新作业决定继续学习!!我想学习数据结构的原因,一部分是因为数据结构是程序设计的基础,学好数据结构和算法可以写出更好的算法。另外如果在以后我觉得自己学习的不错的话,我想去试试参 ......
数据结构和算法的区别?——算法工程师必备基础知识
基础部分:语言部分(Python、C++、Java)输入、输出、变量、容器等。 算法和数据结构:数据结构用于存储数据,算法则是用于查找数据 参考:https://www.bilibili.com/video/BV1bo4y1R7MB/ ......
09反序列化漏洞:使用了编译型语言,为什么还是会被注入?
反序列化漏洞是如何产生的? 反序列化漏洞是一种安全漏洞,它利用了应用程序在处理反序列化数据时的弱点。当应用程序接收并反序列化来自不可信源的数据时,攻击者可以通过构造恶意序列化数据来执行未经授权的操作或者触发不安全的行为。 原理是当应用程序对反序列化数据进行处理时,它会根据序列化数据中的类名来加载相应 ......
结构体中ElementType的使用
1.问题 在定义结构体时,对于元素值,为什么喜欢使用ElementType而不是直接使用int或者char等等? 2.结论 对于int get_result(int x); 和 int get_result(ElementType x);这一类函数具有相关参数时 我们可能在某个时刻需要使用的int类 ......
C语言中如何使两个整型变量计算出浮点型结果
遭遇的问题 在学习时有一个课后题要求计算两个变量的加减乘除以及取余,想到除法可能会计算出小数,就用浮点型接收除法的结果 int a,b; double div; div = a / b; 但是算出来的结果却不对 解决办法 问题在于: C语言中,两个同类型的变量做运算得出的结果还是该类型的。而两个1不 ......
指针
指针 指针,存放的是地址,指向地址上的值 一般的,指针的用处是 1、实现动态数组 2、实现链表等数据结构 指针定义 指针类型 * 指针变量 如: int a; int *p; //注意:定义指针时的*属于声明,并不是取值符 p = &a; //&为取地址符,p存放a的地址 所以 *p 等价于 a; ......
C语言输出百分号%
遭遇的问题 在学习时有一个课后题要求计算两个变量的加减乘除以及取余,其中去余需要输出如下的效果: 10 % 5 = 0; 我就写了这样的代码: printf("a % b = %d",mod); 结果就输出的这: 13 7 = 6 试了下%也没有用 然后去查了查如何在C中输出% 知识 C中输出时,% ......
复习C语言-题目 1010: [编程入门]利润计算
企业发放的奖金根据利润I提成。 利润I低于或等于100000元的,奖金可提10%;利润高于100000元,低于或等于200000元(100000<I≤200000)时,低于等于100000元部分按10%提成,高于100000元的部分,可提成 7.5%;200000<I≤400000时,低于20000 ......
复习C语言-题目 1008: [编程入门]成绩评定
题目描述 给出一百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。 90分以及90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。 输入格式 一个整数0-100以内 输出格式 一个字符,表示成绩等级 样例输入 复制 90 样例输出 复制 A 1 # ......
复习C语言-题目 1009: [编程入门]数字的处理与判断
题目描述 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123 输入格式 一个不大于5位的数字 输出格式 三行 第一行 位数 第二行 用空格分开的每个数字,注意最后一个数字后没有空格 第三行 按逆序输出这个数 样例输入 1 ......
指针的前加加和后加加运算
目录: 前加加和后加加 **p++ **++p *++*p **p++ 前加加和后加加 前加加和后加加的区别就是先自增还是先参与运算。顾名思义,后加加就是先参与运算,在进行自增。先加加就是先进行自增,再参与运算。 以下面的代码为例: int i = 1, j = 1; int num1 = 0, n ......
好用的C语言JSON解析器
本文介绍开源C语言库Melon的JSON解析器。 相信很多读者都听说过甚至使用过cJSON开源库。那么本文就拿cJSON与Melon的JSON组件进行对比。 下面我们就来一起看一看。 编码Encode 假设我们要构建如下JSON: { "name": "Awesome 4K", "resolutio ......
网络协议的重要性与应用:理解进程间通信和网络分层结构(上)
学习网络协议的关键是了解其分层结构。在计算机网络中,我们使用的是OSI标准模型和TCP/IP网络模型。这些模型将网络通信划分为多个层级,每个层级都有不同的功能和作用。在本章节中,我们主要讲解了TCP/IP网络模型的前三层:应用层、传输层和网络层。后面的数据链路层和物理层将在下一篇文章中进行详细讲解 ......
王道数据结构:设线性表中每个元素有两个数据项k1和k2,现对线性表按一下规则进行排序:先看数据项k1,k1值小的元素在前,大的在后
题目:设线性表中每个元素有两个数据项k1和k2,现对线性表按一下规则进行排序:先看数据项k1,k1值小的元素在前,大的在后;在k1值相同的情况下,再看k2,k2值小的在前,大的在后。满足这种要求的排序方法是( )A.先按k1进行直接插入排序,再按k2进行简单选择排序B.先按k2进行直接插入排序,再按 ......