小樽C++ 多章⑧ (贰) 指针与数组

news2025/7/13 8:36:11

目录

1.C++中数组变量名某些情况可以看成是指针

2.C语言的scanf 输入语句,printf 输出语句

3.用指针来当动态数组


小樽C++ 多章⑧ (壹) 指针变量icon-default.png?t=N176https://blog.csdn.net/weixin_44775255/article/details/129031168

小樽C++ 多章⑧ (叁) 指针与字符串、(肆) 函数与指针icon-default.png?t=N176https://blog.csdn.net/weixin_44775255/article/details/129397866​​​​​​​

1.C++中数组变量名某些情况可以看成是指针

#include<iostream>
using namespace std;
//	1.用数组名访问数组
int a[]={10,11,12,13,14,15};
int *p=a+1;
int main(){
	cout<<*a<<endl; //默认输出第一个 
	cout<<*(a+2)<<endl;
	cout<<*(++p)<<endl; 	
    return 0;
}

  1. *a代表,初始指向 a[0]位置,也就是10。
  2. *(a+2)    a+2代表 数组a地址往后挪2位,也就是a[2]的地址, 指针就指向12。
  3.  *p = a+1, 那p指向a[1]的地址,++p 那就指向a[2]的地址,*(++p)就是a[2]的值12。
  • 可以发现,数组变量a可以当作指针使用,默认指向第一个数组元素!
  • 指针是动态的数据结构、数组是静态数据结构。指针在C语言的输入语句就用到了。接下来我们了解下C语言的输入scanf,输出printf。


2.C语言的scanf 输入语句,printf 输出语句

用C语言的输入输出前要导入库:include<cstdio>  //c语言的标准IO

格式:printf(“格式控制字符串” , 输出列表)

#include<iostream>
#include<cstdio>
using namespace std;
int main(){
	// 输出用法例子 
	printf("整数:%d,长整数:%ld\n",100*1234,1+3*10000000);	
	printf("单精度:%f,双精度:%lf\n",1.5*1234,1+3*1.55);	
	printf("保留2位:%.2f, 9个占位并保留3位:%9.3f\n",3.14*1422,3.14159*3);	
	printf("字符:%c, 字符串:%s",'A',"abccd"); 
	
//	 输入用法例子
	int a;
	double b;
	float c;
	scanf("%d%lf%f",&a,&b,&c);
	printf("a=%d  b=%lf  c=%f",a,b,c); 
	return 0;
	
}

 

scanf 使用数组名

//2.scanf使用数组名
#include<iostream>
#include<cstdio>
using namespace std;
int a[5];
int main(){
	for(int i=0;i<5;i++){
		scanf("%d",a+i); //a+i就是地址,a+0,a+1,a+4等地址 
	}
	for(int i=0;i<5;i++){
//		cout<<*(a+i)<<" ";
		printf("a[%d]=%d\n",i,a[i]);  //a[i]就是 *(a+i)
	} 
	return 0;
}


3.用指针来当动态数组

什么是动态数组? 数组空间长度可以变,不固定。

用指针来当数组可实现动态变化。

例如:求数组元素的和。

//3.指针也可以看成数组名
#include<iostream>
#include<cstdio>
using namespace std;
int n;
int *a; //指针变量a当数组名使用 
int main(){
	scanf("%d",&n);
	//指针变成数组怎么写? 
	a = new int[n+1]; // 申请连续的n+1片的空间给指针a
	for(int i=0;i<5;i++){ // 输入值到数组
		scanf("%d",&a[i]);
	}
	for(int i=1;i<5;i++){ // 求和运算
		a[i] = a[i] + a[i-1];
	}
	for(int i=0;i<5;i++){ // 输出结果
		printf("%d ",a[i]);
	}
	return 0;
} 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/396076.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GitLab 凭借什么连续 3 年上榜 Gartner 应用程序安全测试魔力象限?听听 GitLab 自己的分析

本文来源&#xff1a;about.gitlab.com 作者&#xff1a;Sandra Gittlen 译者&#xff1a;极狐(GitLab) 市场部内容团队 应用程序安全测试&#xff08;AST&#xff09;对于应用程序研发来说&#xff0c;是一个正在快速发展并且十分重要的领域。DevOps 方法论提到&#xff1a;需…

Java基础之《dubbo(1)—dubbo基础入门》

一、为什么要使用dubbo 1、dubbo是什么 dubbo是一个分布式服务框架&#xff0c;致力于提供高性能和透明化的RPC远程服务调用方案&#xff0c;以及SOA服务治理方案。 2、dubbo有何特点 &#xff08;1&#xff09;远程通讯&#xff1a;提供透明化的远程方法调用&#xff0c;提供…

入门JAVA第十七天 Oracle的JDBC技术

一、数据库JDBC技术学习内容与方法 1.1 学习内容 &#xff08;1&#xff09; Oracle数据库 目前最好的关系型数据库。 基本的CRUD命令 SQL语句。select(R),update(U),delete(D),insert(C) &#xff08;2&#xff09; MySQL数据库 中小型项目非常好用的关系型数据库。 灵活&…

【零基础入门前端系列】—浮动(十八)

【零基础入门前端系列】—浮动&#xff08;十八&#xff09; 一、浮动的定义 float属性定义元素在哪个方向&#xff0c;以往这个属性总应用于图像&#xff0c;使得文本围绕在图像的周围&#xff0c;不过在CSS中&#xff0c;任何元素都可以浮动&#xff0c;浮动的元素会生成一…

【Git】P5 Git 远程仓库(3)pull 发生冲突

pull 发生冲突冲突在什么场景下发生&#xff1f;为什么要先 pull 再 push构建一个冲突场景初始开始操作&#xff1a;程序员2&#xff1a;程序员1&#xff1a;程序员2&#xff1a;发生冲突&#xff1a;查看冲突&#xff1a;解决冲突&#xff1a;冲突在什么场景下发生&#xff1f…

[手写OS]动手实现一个OS 之 准备工作以及引导扇区

[手写OS]动手实现一个OS之第一步-环境以及引导扇区 环境准备 一台可用计算机&#xff08;linux我不知道&#xff0c;我用的Windows&#xff09;汇编编译器NASM一个方便的软盘读写工具VirtualBox 汇编编译器NASM 官网地址&#xff1a;https://www.nasm.us/pub/nasm/snapshot…

java 中的equals()示例代码

Java中的equals()是十分重要的&#xff0c;和要区别开来简述public booleanequals(Object obj)作用&#xff1a;判断其他的对象是否和该对象相等其比较规则为&#xff1a;当参数obj引用的对象与当前对象为同一个对象时&#xff0c;就返回true,否则返回false.简单示例equals()方…

代码随想录算法训练营第二十二天 | 235. 二叉搜索树的最近公共祖先 、701.二叉搜索树中的插入操作、450.删除二叉搜索树中的节点

打卡第22天&#xff0c;平衡二叉树&#xff0c;难&#xff0c;难&#xff0c;难。 今日任务 235.二叉搜索树的最近公共祖先701.二叉搜索树中的插入操作450.删除二叉搜索树中的节点 235.二叉搜索树的最近公共祖先 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百…

BeanFactory接口

目录 概述 接口方法 BeanFactory重要的子类 概述 BeanFactory是容器的顶层接口,也是spring最核心的容器,管理bean的核心方法都在BeanFactory接口中定义。像ApplicationContext接口,ConfigurableApplicationContext接口都间接继承BeanFactory接口,既ApplicationContext调用ge…

Wwise集成到unreal

1、Wwise集成到Unreal 1.1 安装必要的软件 安装unreal 5.1&#xff1b;安装Audiokinetic Launcher&#xff1b;集成版本是Wwise 2021.1.12.7973。Audiokinetic Launcher下载地址&#xff1a; https://www.audiokinetic.com/zh/thank-you/launcher/windows/?refdownload&pl…

Go语言学习的第三天--下部分(Gin框架的基础了解)

每天都会分享Go的知识&#xff0c;喜欢的朋友关注一下。每天的学习分成两部分基础&#xff08;必要的&#xff0c;基础不牢地动山摇&#xff09;&#xff0c;另一部分是Go的一些框架知识&#xff08;会不定时发布&#xff0c;因为小Wei也是一名搬砖人&#xff09;。但是可以保证…

哪个牌子的蓝牙耳机最好?质量最好的蓝牙耳机排行榜

随着蓝牙耳机的发展越来越快速&#xff0c;蓝牙耳机市场涌现出五花八门的产品&#xff0c;外观不同、性能不一。最近看到很多人问&#xff0c;哪个牌子的蓝牙耳机最好&#xff1f;接下来&#xff0c;我来给大家推荐几款质量最好的蓝牙耳机排行榜&#xff0c;一起来看看吧。 一…

电商使用CRM系统有什么好处,如何选择

数据显示&#xff0c;使用电商CRM客户管理系统后&#xff0c;企业销售额提高了87%&#xff0c;客户满意度提高了74%&#xff0c;业务效率提高了73%。要在竞争激烈的电商市场取得成功&#xff0c;与目标受众的有效沟通是有效的方法。下面说说什么是电商CRM系统&#xff1f;电商C…

如何使用ArcGIS生成剖面图(附练习数据)

1、概述地形剖面图指沿地表某一直线方向上的垂直剖面图&#xff0c;以显示剖面线上断面地势起伏状况。能够制作剖面图的软件有很多&#xff0c;作为GIS行业的老大&#xff0c;ArcGIS当然也是可以的&#xff0c;这里给大家详细介绍一下ArcGIS中制作剖面图的知识&#xff0c;希望…

2.详解DEBUG模式

文章目录DEBUG模式解决了两个问题四种开启DEBUG的方式第一种第二种第三种第四种DEBUG的PIN码可以在浏览器端调试代码使用&#xff08;不推荐使用&#xff0c;了解就可以&#xff09;DEBUG模式解决了两个问题 flask代码中如果出现了异常&#xff0c;我们在浏览器中不会提示具体…

图床搭建,使用typora上传

1. 准备gitee作为图床的仓库 新建仓库 准备仓库的私人令牌&#xff0c;后面配合使用 点击个人设置——》私人令牌 注意私人令牌&#xff0c;复制保存好&#xff0c;后面不能再看了 2. 准备PicGO&#xff0c;并进行相关配置 PicGo官方下载链接 下载安装好node.js,下载网址 安…

【银行测试】必看的四类题型:这可是最经典的一套题目了

目录&#xff1a;导读 一、根据题目要求写出具体LINUX操作命令 二、JMETER题目 三、根据题目要求写出具体SQL语句 四、测试案例设计题 金三银四面试面对大厂面试官提问&#xff0c;如何回答&#xff1a;花3天背完这100道软件测试面试题&#xff01;银行测试的offer还不是手…

【GO】K8s 管理系统项目34[Linux环境–应用部署]

K8s 管理系统项目[Linux环境–应用部署] 1. 启动数据库 1.1 配置yum仓库 rm -f /etc/yum.repos.d/*.repo wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/…

Vue 实现图片监听鼠标滑轮滚动实现图片缩小放大功能

前言 其实想要实现功能很简单&#xff0c;就是在一张图片上监听鼠标滑轮滚动的事件&#xff0c;然后根据上滚还是下滚实现图片的缩放。 效果&#xff1a; 注&#xff1a;该配图使用《漫画|有趣的了解一下赋值、深浅拷贝》文章图片&#xff0c;不存在侵权问题。 实现思路 在…

规划数据指标体系方法(下)——新海盗模型

前面已经跟大家分享了规划数据指标体系的两种方法—— OSM 和 UJM 模型&#xff0c;分别从目标-策略以及用户旅途的角度阐述了规划数据指标体系的过程。今天我来跟大家分享最后一种规划数据指标体系的方法——新海盗模型。 了解新海盗模型 海盗模型&#xff0c;即 AARRR 模型&…