c语言:指针(3)+冒泡排序

##1. 数组和指针的关系

arr == &arr0

代表首元素的地址

但是有两个例外

sizeof(arr) 得到整个数组的总字节数

&arr 取整个数组的地址

注意:arr、&arr0、&arr 它们打印出来的都是同一个地址

arr+1跳过一个元素

&arr+1跳过整个数组

公式:arri==*(arr+i);

##2.数组名会退化

void test (int arr\[\] )

void test ( int *arr )

##3.指针数组和数组指针

看最后两个字区分

int (arr)5; 里面放5个int

int *arr5; 里面放5个int

##4.常量字符串

const char *p="abcdef";

char str\[\]="hello";

前者本质是指针,后者是数组

p存的是a的地址,str存的是hello \ 0

##5.冒泡排序

int sz=sizeof(arr)/sizeof(arr0);

for(i=0;i<sz_1;i++)

{

for(j=0;j<sz-1-i;j++)

{ if(arrj<arrj+1)

{

int tmp=arrj;

arrj=arrj+1;

arrj+1=tmp;

}

}

}

后期用qsort简化

##6.浮点数不可以直接a==b

这样会出现精度缺失

If(fabs(a-b)<1e-7)来判断

1e-7表示10的负7次方

##7.switch

没有break就会一直穿透下去

不管是case还是default

##8.二级指针

int **ppa=&p
存放的是
p的地址

相关推荐
D e re k ZH6 分钟前
C++ 从零入门(一):基础语法与程序结构
数据结构·c++·算法
Pniubi41 分钟前
力扣438.找到字符串中所有字母异位词
算法·leetcode·职场和发展
yeccheng1 小时前
MySQL 索引超详解:从底层 B+ 树到面试高频考点
java·开发语言·jvm·mysql·面试
这个昵称不容易1 小时前
SpringBoot 读书笔记共享平台部署实战:97 个 Java 文件 / 113 个接口 / 10 张表
java·springboot·毕设
東隅已逝,桑榆非晚3 小时前
算法6. 双指针法-查找总价格为目标的两个商品
c++·学习·算法
Eyfcom3 小时前
〖物联网终端实战 01〗UWB 室内高精度定位:仓储 AGV 与人员的厘米级轨迹追踪
物联网·算法·物流系统·快递系统·跨境物流快递系统·物联网终端实战
金銀銅鐵4 小时前
一个 Java 文件实现《孫子兵法·始計篇》中英对照阅读器
java·后端·ai编程
DevOpenClub4 小时前
高考教育信息问答 API:会话参数、资料引用与流式响应
java·数据库·高考
bro_Java6664 小时前
《排序的底层逻辑:比较、交换与分治》
java·算法·排序算法
爱喝雪碧的可乐4 小时前
MATLAB
开发语言·算法·matlab