C语言学习笔记day18
1. 指针基本概念
1.地址:用来区分内存中不同字节的编号
2.指针:地址就是指针,指针就是地址
3.指针变量:存储指针的变量,有时去掉变量,称为指针
2. 指针运算符
1.&:
1.获得一个变量在内存空间中的首地址
2.让表达式类型升级
2.*:
1.取指针指向空间中的值(所取空间大小取决于指针类型)
2.将等号右边的值放入指针指向的空间
3.让表达式类型降级
二级指针在C语言中2个地方使用:
1.函数体内部想修改函数体外部指针变量值的时候,传指针变量的地址也就是二级指针
2.指针数组传参时,数组的数组名是指向数组第一个指针元素的指针,也就是二级指针
3. 指针的算数运算
+ 指针偏移量为指向的数据类型大小个字节空间
-
++
--
int *: 4
char *: 1
double *: 8
struct student*: 44
int **: 8
4. void指针
void a;
void *p;
void指针常用来存储内存地址
1.void类型指针不要使用* ++ --相关操作
void *型指针和其余类型指针的转换
void * -> char * 不需要做强制类型转换
double *
int *
char * -> void * 需要类型转换(舍弃精度)
double *
int *
主要用在作为函数参数,或者函数返回值表示兼容所有类型指针
将内存地址为0x2000的空间赋值一个整形100
(*(int *)((void *)0x2000)) = 100;
5. const指针
1.const int *p;
2.int const *p;
3.int *const p;
4.const int *const p;
5.int const *const p;
1和2是等价的
p可以改变,*p不可以改变
p可以指向任意空间,但无法利用p修改指针空间的值
3
p不能改变,*p可以改变
p只能指向初始化时的空间,无法指向其余空间,但可以利用指针修改指向空间的值
注意:必须初始化
数组的数组名
4和5是等价的
p不能改变, *p不能改变
注意:必须初始化
6. 指针数组和数组指针
指针数组:
int *a[5];
定义一个数组,数组有5个元素,每个元素8个字节,共40个字节,每个元素都是指向
整形变量的指针
char *pstr[5];
存储字符串数组使用二维数组
操作字符串数组使用指针数组
相关文章:
C语言学习笔记day18
1. 指针基本概念 1.地址:用来区分内存中不同字节的编号 2.指针:地址就是指针,指针就是地址 3.指针变量:存储指针的变量,有时去掉变量,称为指针 2. 指针运算符 1.&: 1.获得一个变量在内存空间中的首地址 2.让表达式类型升级 2.*: 1.取…...
JSP内置对象session
1.session对象,为会话对象,封装当前用户会话中的有关信息。 网页数据传递是单向传递的,session能够将数据进行多个数据互相传递,使用的是同一个东西 实例1: 利用session对象String getId() 方法获取当前session对象…...
BM96 主持人调度(二)(贪心算法)
一开始写的时候忘了给start、end数组赋值了 import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** 计算成功举办活动需要多少名主持人* param n int整型 有n个活动* param start…...
【TB作品】MSP430单片机读取大气压强传感器BMP180
文章目录 实物main所有代码 实物 main #include <msp430.h> #include "stdio.h" #include "OLED.h"#include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h>// P2.2 oled scl // P2.3 oled sda// p…...
Github第一Star数的国产免费开源防火墙--雷池社区版初步体验
前言 近期准备搭建一个博客网站,用来存储工作室同学们的学习笔记。服务器准备直接放在公网上,方便大家随时随地的上传和浏览,为了防止网站被人日穿成为肉鸡,一些防御措施还是要部署的。 首先明确自己的需求: 零成本…...
自动驾驶涉及相关的技术
自动驾驶涉及多种技术,包括传感器、数据处理、决策制定和执行控制等方面。以下是一些关键技术的详细说明: 传感器技术: 激光雷达(LiDAR):激光雷达通过发射激光束并测量其反射时间来获取周围环境的高精度三维…...
简单高效的GO发票识别+发票查验接口
在这个瞬息万变的商业世界里,商业欺诈如影随形,虚假发票成为企业难以忽视的风险。而发票作为每笔交易的重要凭证,对其进行入账前的真伪查验显得尤为重要。但面对海量的发票查验与发票录入工作,人工手动查验的方式,速度…...
c++和python基本数据类型比较
以下是 C 和 Python 中一些基本数据类型的比较: 1. 整数类型: C: C 中的整数类型包括 int, short, long, long long 等,它们的大小和范围取决于编译器和操作系统。 Python: Python 中只有一个整数类型 int࿰…...
运维工具如此割裂,九招帮你统一纳管
背景 在运维工具这个江湖中,出现了众多独行侠客,各怀绝技,各自为战。这些开源监控软件如同武林中的各派门派:SkyWalking 以精湛的追踪功夫独步武林;Prometheus 以灵活的告警机制纵横江湖;ELK 则如同黯然销…...
基于springboot的大创管理系统源码数据库
基于springboot的大创管理系统源码数据库 摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了大创管理系统的开发全过程。通过分析大创管理系统管理的不足,创建了一个计算机管理大创管理系统的方案。…...
解密辛普森悖论:如何在数据分析中保持清醒头脑
解密辛普森悖论:如何在数据分析中保持清醒头脑 之前也参加fine Bi的 培训,学到了辛普森悖论,今天为大家介绍一下 文章目录 解密辛普森悖论:如何在数据分析中保持清醒头脑前言我们来举一个例子数据分析解释管理应用的启示 前言 什…...
Vue前端框架
1.vue基本使用1 1.vue环境搭建 一般创建vue项目是在cmd命令中用:vue ui 命令,采用ui图形界面的方式直观创建项目。 2.vue基本使用方式:vue组件 3.文本插值 4.属性绑定 5.事件绑定 6.双向绑定 7.条件渲染 2.vue基本使用2 1.axios 安装axios命令…...
【随笔】Git 基础篇 -- 远程仓库 git clone(二十五)
💌 所属专栏:【Git】 😀 作 者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大…...
在js中如果a的值是空是不是if(表达式的值是false)?
在JavaScript中,一个变量的“空”值可以有多种含义,具体取决于该变量的类型和内容。对于if语句中的条件表达式,其值会被隐式地转换为布尔值。以下是JavaScript中常见的“空”值以及它们在布尔上下文中的行为: null:在…...
数据生成 | Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成
数据生成 | Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成 目录 数据生成 | Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成生成效果基本描述模型描述程序设计参考资料 生成效果 基本描述 1.Matlab实现基于K-means和SVM的GMM高斯混合分布的数据生成…...
HarmonyOS开发:【NFC配置流程】
一、简介 碰一碰是HarmonyOS具备的多终端业务协同技术。其依托NFC短距通信协议,通过碰一碰的交互方式,将手机和全场景设备连接起来。然后通过手机端的原子化服务能力,快速完成配网、远程控制的能力,解决了应用与设备之间接续慢、…...
解决JQuery和其他库的冲突
文章目录 1.使用 noConflict() 方法:2.使用 IIFE(立即调用函数表达式):3.加载顺序:4.使用命名空间:5.使用 jQuery Migrate 插件: 1.使用 noConflict() 方法: 这是最常见和简单的解决…...
【Linux】在 Linux 上模拟网络故障
文章目录 模拟网络丢包模拟网络延迟、抖动模拟网络包重复模拟网络带宽受限模拟网络错误模拟网络乱序配合 cgroup 进行进程级带宽限制重置网络清空所有规则 模拟网络丢包 # 在eth0网络接口上替换排队规则,应用netem规则来模拟30%的数据包丢失 tc qdisc replace dev …...
腾讯云流量怎么计算的?轻量服务器流量价格表
腾讯云轻量应用服务器套餐带流量包,就是有月流量限制的意思,超出轻量套餐的流量需要另外支付流量费,轻量服务器地域不同超额流量费用也不同,北京上海广州等中国内地地域流量价格是0.8元每GB,中国香港地域流量价格是1元…...
解决Maven Clean过程因内存溢出导致的“Process terminated”问题
正文: 在今天的开发过程中,我遇到了一个意料之外的问题,当我尝试使用 Maven 进行项目清理(maven clean)时,命令行反馈了一个错误信息:“Process terminated”。经过一番排查,发现问…...
装饰模式(Decorator Pattern)重构java邮件发奖系统实战
前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...
基于ASP.NET+ SQL Server实现(Web)医院信息管理系统
医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...
《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)
CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...
10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...
Fabric V2.5 通用溯源系统——增加图片上传与下载功能
fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...
七、数据库的完整性
七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...
LabVIEW双光子成像系统技术
双光子成像技术的核心特性 双光子成像通过双低能量光子协同激发机制,展现出显著的技术优势: 深层组织穿透能力:适用于活体组织深度成像 高分辨率观测性能:满足微观结构的精细研究需求 低光毒性特点:减少对样本的损伤…...
Ubuntu系统多网卡多相机IP设置方法
目录 1、硬件情况 2、如何设置网卡和相机IP 2.1 万兆网卡连接交换机,交换机再连相机 2.1.1 网卡设置 2.1.2 相机设置 2.3 万兆网卡直连相机 1、硬件情况 2个网卡n个相机 电脑系统信息,系统版本:Ubuntu22.04.5 LTS;内核版本…...
jdbc查询mysql数据库时,出现id顺序错误的情况
我在repository中的查询语句如下所示,即传入一个List<intager>的数据,返回这些id的问题列表。但是由于数据库查询时ID列表的顺序与预期不一致,会导致返回的id是从小到大排列的,但我不希望这样。 Query("SELECT NEW com…...
