void Func(char a[100])
{
cout<< sizeof(a) << endl; // 4 字节而不是 100 字节 
}

在C/C++里数组作为参数时传递的实际上是指向数组第一个元素的指针,因此sizeof(str)返回的是指针的大小,即4。

注意以下三种形式的参数是完全等价的:

1

2

3

void Func(char str[100]);

void Func(char str[]);

void Func(char *str);

因为传递的本质上是指针,所以维数也是不必要的。以下调用是完全合法的:

1

2

3

void Func(char str[100]);

char ch[10];

Func(ch);

sizeof(char str[])的大小、sizeof(char *str)相关推荐

  1. sizeof是如何计算数组大小的

    sizeof是如何计算数组大小的 char *ptr; char arr[10]; sizeof(ptr) =4; sizeof(arr) =10;请问是如何计算数组大小的?这里只是把地址传给size ...

  2. c/c++ sizeof(数组名) 的解析 sizeof如何计算数组大小

    按照传统,先给结论:sizeof(数组名) 的值是这个数组所占据的内存的大小,单位是字节(bytes),在32位机器上,假设一个int型的数组a,里面一共有10个int类型元素,那么sizeof(a) ...

  3. char[]:strlen和sizeof的区别

    C code: // char[]:strlen和sizeof的区别 #include <stdio.h> #include <string.h> int main(int a ...

  4. 数组名不等于指针---sizeof()函数求数组大小错误问题

    前言: 今天在项目中需要求采样点的数量并且遍历,采样点用数组存储,自定义了一个函数想要用sizeof求其长度,然后遍历,结果失败了,查阅之后发现以下问题: 在main函数中,sizeof是可以正常工作 ...

  5. sizeof计算类的大小

    1 sizeof一个空类 class A { };cout<<sizeof(A)<<endl;//1 注:class A是一个空类型,它的实例不包含任何信息,本来求sizeof ...

  6. #pragma pack(n)和sizeof求结构的大小

    为了提高CPU的存储速度,VC对一些变量的起始地址做了"对齐"处理.在默认情况下,VC规定各成员变量存放的起始地址相对于结构的起始地址的偏移量必须为该变量的类型所占用的字节数的倍数 ...

  7. c++面试常用知识(sizeof计算类的大小,虚拟继承,重载,隐藏,覆盖)

    一. sizeof计算结构体 注:本机机器字长为64位 1.最普通的类和普通的继承 #include<iostream> using namespace std;class Parent{ ...

  8. 指针的大小--sizeof问题和sizeof使用规则

    1.什么是sizeof 首先看一下sizeof在msdn上的定义: The sizeof keyword gives the amount of storage, in bytes, associat ...

  9. 使用sizeof()计算结构体大小

    下面代码的输出结果是: #include <iostream> using namespace std; #pragma pack(4) struct T{ char a; short b ...

最新文章

  1. 怎么样才能快速的把淘宝店铺推广出去
  2. Qt QComboBox下拉框文字重叠解决方法
  3. 【BZOJ1185】【HNOI2007】最小矩形覆盖(凸包+旋转卡壳)
  4. /boot/grub/grub.conf文件详解
  5. ABAP formula
  6. ubuntu之ufw防火墙
  7. document.body.scrollTop
  8. mimimiaaaaaa
  9. django小站,数据3w+
  10. PHP获取grpc请求时间,Go gRPC进阶-超时设置(六)
  11. Python 3.9.5 官方中文文档及打包下载
  12. 软考信息系统项目管理师知识点总结(高项十大管理案例分析作文)
  13. 服务器的带宽与宽带有什么区别
  14. 解决win10系统alt+tab切换程序不显示程序缩略图问题
  15. HTML修改CSS样式或更新内容,网页自动刷新
  16. win7删除后清空回收站文件如何恢复
  17. Flutter 安装包体积优化
  18. 施工部署主要不包括_施工部署包括哪些?
  19. h3c S2000-EA 交换机DHCP Snooping支持Option 82功能的配置
  20. 【模块介绍】6×6矩阵键盘(硬件部分和扫描方式)

热门文章

  1. 关于 Intel Realsense 深度图像处理.1(C++)
  2. 防火墙ASA5520配置
  3. 用Delphi发邮件
  4. 需不需要懂代码?——软件测试人员
  5. 模拟UNIX/Linux 文件系统 c语言
  6. 【前端知识体系】浏览器
  7. 上海交大计算机学院拟录取名单,拟录取名单:上海交通大学各学院2019年研究生拟录取名单...
  8. 中点法 matlab,中点法解常微分方程(组)
  9. springCache注解详解
  10. Angular 4.x 学习导引