1、

void fun(char ch[])
{
cout<<sizeof(ch)<<endl; //或者sizeof(ch)=?;
}

这种情况,数组名作为形参,退化成指针,所以sizeof结果是4(32位编译器);

2、

int *p=(int *)malloc();

cout<<sizeof(p)<<endl;

答案为4(32位编译器)。

sizeof(p)只能测定指针大小,sizeof不能测定动态分配的数组大小

3、

    int x[]={};
cout<<sizeof(x)<<endl;
int y[]={,,,};
cout<<sizeof(y)<<endl;

输出:40    16

4、结构体

C语言 - 结构体所占字节数      内容有点多,可以多看几遍

结构体所占空间大小的运算

关于结构体所占字节数,内存对齐心得

【C语言】结构体占用字节数及存储与空间分配

5、共用体:共用体的各个成员占用共同的存储单元,具有相同的首地址,占用存储单元最多的成员的长度就是共用体的长度。

    struct stru{char c;int a;};
union uni{char c;int a;}; struct stru st={};
union uni un={};
cout<<sizeof(st)<<endl;
cout<<sizeof(un)<<endl;

32位编译器输出:

8

4

笔试中sizeof求字节数的问题的更多相关文章

  1. 1byte、1KB、4KB,1MB、1GB用16进制表示的范围。任意地址范围求字节数

    1byte.1KB.4KB,1MB.1GB用16进制表示的范围.任意地址范围求字节数 2018-02-12 18:27:48 望那伊人 阅读数 5032更多 分类专栏: 计算机相关   版权声明:本文 ...

  2. sizeof运算符来获取各种数据类型在内存中所占字节数--gyy整理

    C++并没有规定各种数据类型在内存中的存储大小,依赖于不同的编译器的不同而不同,要想获知当前编译器对各种数据类型分配的大小,可以通过sizeof运算符来获取. 使用方法1: sizeof(数据类型) ...

  3. sizeof求字节以及与strlen的区别

    例子一: /* *根据以下条件进行计算: *1. 结构体的大小等于结构体内最大成员大小的整数倍 *2. 结构体内的成员的首地址相对于结构体首地址的偏移量是其类型大小的整数倍,比如说double型成员相 ...

  4. C#中如何按字节数截取字符串?

    http://www.cnblogs.com/xuejie/archive/2012/12/14/2818452.html

  5. C语言中数据类型的字节数

    类型 16位 32 位 64位 char 1 1 1 short int 2 2 2 int 2 4 4 unsigned int 2 4 4 float 4 4 4 double 8 8 8 lon ...

  6. c# 数据类型占用的字节数

    最近一直在使用C#中的关于各种数据类型转化为字节或者字节转化为各种数据类型进行数据解析.但是在此之前必须知道各种数据类型在字节中占的字节数. 所以在此归总. bool -> System.Boo ...

  7. int、char、long各占多少字节数

    Java基本类型占用的字节数:1字节: byte , boolean2字节: short , char4字节: int , float8字节: long , double 编码与中文:Unicode/ ...

  8. c++中各类型数据所占字节数(一)

    转自: https://blog.csdn.net/hi_baymax/article/details/82415896 和机器字长及编译器有关系: 所以,int,long int,short int ...

  9. 关于char/varchar(n)中n的探究:字符数or字节数

    [问题来源]将设计的数据库表展示的时候,yu哥问我,你的那个top_info字段定义的类型是varchar(100),为什么是100呢,这100的长度能存多少个中文? 当时的想法就是,这个100能存多 ...

随机推荐

  1. Mybatis 使用Mapper接口的Sql动态代码方式进行CURD和分页查询

    1.Maven的pom.xml 2.配置文件 2.1.db.properties 2.2.mybatis.xml 2.3.log4j.xml 3.MybatisUtil工具类 4.Mapper映射文件 ...

  2. 调整VMware中虚拟机中Linux系统屏幕分辨率的问题

    即:解决显示底部菜单栏以及安装软件中没有下一步的按钮用Tab键的问题 右击打开终端,输入以下命令: Xrandr Xrandr -s  1280x720 (自己选择一个分辨率即可) 原文:https: ...

  3. [JZOJ1904] 【2010集训队出题】拯救Protoss的故乡

    题目 题目大意 给你一个树形的网络,每条边从父亲流向儿子.根节点为原点,叶子节点流向汇点,容量为无穷大. 可以给一些边扩大容量,最多总共扩大\(m\)容量.每条边的容量有上限. 求扩大容量后最大的最大 ...

  4. jQuery - DOM对象和jQuery对象

    DOM对象 : 直接使用JavaScript获取的节点对象 jQuery对象 : 使用jQuery选择器获取的节点对象 DOM对象和jQuery对象分别拥有一套独立的方法, 不能混用 <scri ...

  5. Kibana启动报错 server is not ready yet的解决方案

    前言: ​ 今天在搭建elasticsearch集群的时候,再次使用Kibana操作elasticsearch的时候报告Kibana server is not ready yet的问题, ​ 通过在 ...

  6. selenium python bindings 项目结构总结

    一个合理的文档结构在import的过程中会避免很多错误,踩完坑来记录. webtests/ framework.py webdriver.py test_file.py module/ __init_ ...

  7. 一篇关于Matcher find方法深刻理解的文章

    文章目录 知识点 find find(int var1) reset group(int var1) 源码 故事是这样的 探索 问题解决 方法一: 方法二: 方法三: 总结 知识点 find 首先fi ...

  8. Vue.js Ajax(axios)

    Vue.js 2.0 版本推荐使用 axios 来完成 ajax 请求. Axios 是一个基于 Promise 的 HTTP 库,可以用在浏览器和 node.js 中. Github开源地址: ht ...

  9. nodejs与websocket模拟简单的聊天室

    nodejs与websocket模拟简单的聊天室 server.js const http = require('http') const fs = require('fs') var userip ...

  10. import socketserver 模块 (27-03)

    使用socketserver实现并发聊天 服务端可以比喻做一部电话. ("127.0.0.1", 8000) 比喻做服务端的一个号码. 1,server.py import soc ...