20250223C语言指针与应用

news/2025/2/26 16:39:34/

20250223C语言指针与应用

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


01指针位数.cpp

#include<stdio.h> int main()
{char a =0x22;
//	char *p;char *p=&a;   //指针变量就是存放地址,为了可以存下计算机内存中任何地址,16位系统指针变量大小为2字节,32-4字节(4x8=32bit),64位系统为8字节 
//	printf("%d\n",sizeof(a));
//	printf("%d\n",sizeof(p));printf("%x\n",a);printf("%x\n",p);	printf("%x\n",*p);//*表示取内容 p++;//指向下一个char数据类型,要防止指针越界,以避免出现程序崩溃或不可预知错误 printf("%x\n",p);	 return 0;
}

02指针与数组.c

#include<stdio.h>
#include<stdlib.h>
int main()
{
//	char a[]={10,20,30};
//	char *p=a;int *a =malloc(3*sizeof(int));*a = 1;*(a+1)=2;	*(a+2)=3;printf("%d\n",sizeof(a)/sizeof(a[0]));printf("a[0]=%d\n",a[0]);printf("a[1]=%d\n",a[1]);printf("a[2]=%d\n",a[2]);printf("a[0]=%d\n",*a);printf("a[1]=%d\n",*(a+1));printf("a[2]=%d\n",*(a+2));return 0;} 

03值传递与参传递.c

#include<stdio.h> void Print( int part)//值传递,将传入的值copy一份给part,涉及值的复制和占用内存
{part = 20;printf("part = %d\n",part);
}int FindMax(const int *arr,int len)//const 防止传入数据被修改 
{int Max = arr[0];int i;for(i=1;i<len;i++){if(Max < arr[i]){Max = arr[i];}}return Max;
}void FindMaxAndCount(int *Max,int *count,const int *arr,int len )
{
//	*Max = arr[0];int i;for(i=0;i<len;i++){if(*Max < arr[i]){*Max = arr[i];(*count) = 1;}else if(*Max == arr[i]){(*count)++;}}
}
/****************/int Timer[] = {1,2,4};int *Get_Timer() 
{
//	int Timer[] = {1,2,4};//禁止返回局部变量,因为局部变量随着函数运行结束而销毁 return Timer;
}
/****************/int main()
{
//	//1 值传递 
//	static int x = 10;
//	Print(x);
//	printf("x = %d\n",x);
//	
//	//2 参数传递 
//	int a[] = {1,2,13,4,5,6};
//	int Max = FindMax(a,6);
//	
//	printf("Max = %d\n",Max);//3 通过指针实现多返回值 
//	int a[] = {13,2,13,4,5,16};
//	int max = a[0],Count=0;
//	FindMaxAndCount(&max,&Count,a,6);
//	printf("Max = %d\n Count = %d\n",max,Count);//	//4 返回句柄
//	 int *pt ;
//	pt = Get_Timer();
//	printf("pt[0] = %d\n",pt[0]);
//	printf("pt[1] = %d\n",pt[1]);
//	printf("pt[2] = %d\n",pt[2]);//5 文件读写 FILE *f =fopen("E:\\test.txt","r");
//	fputc('A',f);
//	fputs("HelloWorld!",f);char a[10];char b;fgets(a,10,f);fclose(f) ;
//	printf("%c\n",a);printf(a);return 0;
}

http://www.ppmy.cn/news/1575049.html

相关文章

GO 快速升级Go版本

由于底层依赖升级了&#xff0c;那我们也要跟着升&#xff0c;go老版本已经不足满足需求了&#xff0c;必须要将版本升级到1.22.0以上 查看当前Go版本 命令查看go版本 go version [rootlocalhost local]# go version go version go1.21.4 linux/amd64 [rootlocalhost local]# …

5分钟使用Docker部署Paint Board快速打造专属在线画板应用

文章目录 前言1.关于Paint Board2.本地部署paint-board3.使用Paint Board4.cpolar内网穿透工具安装5.创建远程连接公网地址6.固定Paint Board公网地址 &#x1f4a1; 推荐 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住…

Ubuntu部署ktransformers

准备工作 一台服务器 CPU&#xff1a;500G GPU&#xff1a;48G&#xff08;NVIDIA4090&#xff09; 系统&#xff1a;Ubuntu20.04&#xff08;github的文档好像用的是22.04&#xff09; 第一步&#xff1a;下载权重文件 1.下载hfd wget https://hf-mirror.com/hfd/hfd.s…

DeepSeek掘金——VSCode 接入DeepSeek V3大模型,附使用说明

VSCode 接入DeepSeek V3大模型,附使用说明 由于近期 DeepSeek 使用人数激增,服务器压力较大,官网已 暂停充值入口 ,且接口响应也开始不稳定,建议使用第三方部署的 DeepSeek,如 硅基流动 或者使用其他模型/插件,如 豆包免费AI插件 MarsCode、阿里免费AI插件 TONGYI Lin…

快手弹幕 websocket 分析

声明: 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; 逆向分析 import timeimport requests…

从人机环境系统智能角度看传统IP的全球化二次创作法则

从人机环境系统智能的视角看&#xff0c;传统IP的全球化二次创作法则需结合技术、文化、伦理与环境的复杂协同。这一过程不仅是内容的本土化改编&#xff0c;更是人、机器与环境在动态交互中实现价值共创的体现。 一、人机环境系统智能的底层逻辑与IP二次创作的融合 1、感知层&…

SV基础(二):数据类型

文章目录 **1. Verilog 的 4 值数据类型****硬件建模的必要性****2. Testbench 中的问题****Verilog 的局限性****3. SystemVerilog 的 2 值数据类型****示例:明确的 2 值操作****4. 何时使用 2 值 vs 4 值****5. 关键优势****6. 注意事项**7. 有符号数与无符号数详解**无符号…

【深度解析:基于 C 语言实现含 IP 城市地址因素的抖音式简化推荐算法】

基于 C 语言实现含 IP 城市地址因素的抖音式简化推荐算法 一、引言二、整体思路三、代码实现3.1 代码示例3.2 代码解释3.2.1 数据结构定义3.2.2 相似度计算3.2.3 生成推荐列表3.2.4 主函数四、注意事项一、引言 在当今数字化信息爆炸的时代,推荐系统扮演着至关重要的角色,像…