首页 > 其他分享 >考试 数组,指针变换易混淆

考试 数组,指针变换易混淆

时间:2022-10-26 13:14:16浏览次数:45  
标签:混淆 arr int 地址 数组名 数组 printf 指针

#define _CRT_SECURE_NO_WARNINGS 1
// 将数组作为参数传给函数
#include <stdio.h>
    //数组名是什么?
    //数组名是数组首元素的地址
    //但是又两个例外:
    //1.sizeof(arr) - 数组名表示整个数组 - 计算的是整个数组的大小,单位字节
    //2.&arr - 数组名表示整个数组 - 取出的是整个数组的地址
int main() {
    int arr[10] = { 0 };

    printf("%p\n", &arr); //000000E3728FF6F8,这个是整个数组的地址就是首元素的地址,虽然结果一样,意义不同
    printf("%p\n", arr); //000000E3728FF6F8
    printf("%p\n", &arr[0]); //000000E3728FF6F8

    printf("%p\n", &arr + 1); //00000081402FF7F0 ,,这个加的是40,整 个地址的首地址
    printf("%p\n", arr+1); //00000081402FF7CC  加4
    printf("%p\n", &arr[0] + 1); //00000081402FF7CC  ,加4

    int sz = sizeof(arr) / sizeof(arr[0]); //整个数组的个数
    printf("%d\n", sz);   //结果:10 ,数组的个数


    printf("%p\n", &arr[0]); //000000A21DBEF578
    printf("%p\n", &arr);  //000000A21DBEF578  

    return 0;
}

标签:混淆,arr,int,地址,数组名,数组,printf,指针
From: https://www.cnblogs.com/kingxyg/p/16827263.html

相关文章

  • 指针初阶001
    1.指针是什么?2.指针和指针类型3.野指针4.指针运算5.指针和数组6.二级指针7.指针数组++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++......
  • ACWing 4480 -- 二分&&双指针&&思维
    题目描述倒垃圾思路其实就是思维题,题意很简单,找到一个居民左侧和右侧(如果存在的话)的垃圾桶中最近的那个垃圾桶,然后让那个垃圾桶的计数器加一。从题目中挖掘的性质:左......
  • LeetCode 566重塑矩阵 指针操作理解笔记
    LeetCode566重塑矩阵指针操作理解笔记题目来源:力扣题库(LeetCode)566.重塑矩阵前言:本来刚看到题目的时候,我是很开心的,这题不就是把二维数组“排扁”成一维数组,然后......
  • Demo48_还原稀疏数组
    //还原稀疏数组packagecom.HuanXin.array_6;publicclassDemo09_01{publicstaticvoidmain(String[]args){int[][]AA=newint[7][7];AA[1][1]=......
  • 力扣561(java&python)-数组拆分(简单)
    题目:给定长度为 2n 的整数数组nums,你的任务是将这些数分成 n对,例如(a1,b1),(a2,b2),...,(an,bn),使得从1到 n的min(ai,bi)总和最大。返回该最大......
  • 数组扁平化 超简单
    letarr=[1,2,[99,100],3,4,[1,2,{name:'hkq'},[[1,2,3],2]],5,6,7,8]letc= arr.flat(Infinity)  //Infinity表示展开任意胜读的......
  • 2 方法、数组、IDEA使用、面向对象
    五、方法1.方法定义和调用2.方法重载OverLoad六、数组1.数组的三种初始化方式:静态、动态、默认2.Arrays工具类3.二维数组七、IDEA介绍1.IDEA常用设置2.IDEA常用快......
  • php打印数组中的值
    一、正序输出数组中的每一个元素<?php//解决中文乱码问题header('Content-Type:text/html;charset=utf-8');//定义数组$arr=array(11,21,39,24,55,36,57);//统计数......
  • 嵌入式-C语言基础:二维数组
    二维数组的每个元素都是一个一维数组,例如intarr[2][3]={{1,2,3},{4,5,6}};下面通过几个例子来对二维数组进行深入了解:二维数组可以看作是一个父数组,他的每个元素都是一个......
  • 实验三 数组、指针与现代C++标准库
    实验五代码:info.hpp:#pragmaonce#include<iostream>usingnamespacestd;classinfo{public:info(stringni="",stringco="",stringci="",i......