面试sizeof C语言各个类型占用字节书
来源:互联网 发布:archlinux如何配置网络 编辑:程序博客网 时间:2024/06/03 21:05
#include <stdio.h>
void fun (int q[100])
{
int y;
y = sizeof (q);
printf ("%d\n", y);
return ;
}
int main()
{
int f;
int *p;
f = sizeof *p;
printf ("%d\n" , f);
/*这里的值应该是p所指向的值,,这是一个整形,所以在32位系统上输出的是4,,,下面改变指针所指向的值的类型以验证*/
char *d;
f = sizeof *d;
printf ("%d\n", f);
/*这里将指针所指向的数据类型更改为char型,验证啦上 面的说明,这里输出是1*/
double *g;
f = sizeof *g;
printf ("%d\n", f);
/*这里输出的是8,,在32位系统中double占用8个字节*/
short *h;
f = sizeof *h;
printf ("%d\n", f);
/*这里输出的是2,,在32位系统中short占用的是2个字节*/
long *j;
f = sizeof *j;
printf ("%d\n", f);
/*long类型占用4个字节*/
float *k;
f = sizeof *k;
printf ("%d\n", f);
/*float类型占用4个字节*/
printf ("*********************************\n");
f = sizeof p;
printf ("%d\n", f);
f = sizeof d;
printf ("%d\n", f);
f = sizeof g;
printf ("%d\n", f);
f = sizeof h;
printf ("%d\n", f);
f = sizeof j;
printf ("%d\n", f);
f = sizeof k;
printf ("%d\n", f);
/*以上这几行输出的都是指向各种类型的指针本身,,,,在32位系统上输出的都是4*/
printf ("*********************************\n");
int a[100];
int l;
l = sizeof (a);
printf ("%d\n", l);
/*这一行输出的是400,,,及4*100一个4个字节a代表的是整个数组*/
l = sizeof (a[100]);
printf ("%d\n", l);
/*这里输出的是4,,a[100]只是代表第100个元素*/
l = sizeof (&a);
printf ("%d\n", l);
l = sizeof (&a[0]);
printf ("%d\n", l);
/*这里输出的是两个指向数组元素的指针,,,,指针所占的字节*/
int r[100];
fun(r);
/*这里就不同于上面400的情况,,,函数传递的是一个数组的指针*/
}
void fun (int q[100])
{
int y;
y = sizeof (q);
printf ("%d\n", y);
return ;
}
int main()
{
int f;
int *p;
f = sizeof *p;
printf ("%d\n" , f);
/*这里的值应该是p所指向的值,,这是一个整形,所以在32位系统上输出的是4,,,下面改变指针所指向的值的类型以验证*/
char *d;
f = sizeof *d;
printf ("%d\n", f);
/*这里将指针所指向的数据类型更改为char型,验证啦上 面的说明,这里输出是1*/
double *g;
f = sizeof *g;
printf ("%d\n", f);
/*这里输出的是8,,在32位系统中double占用8个字节*/
short *h;
f = sizeof *h;
printf ("%d\n", f);
/*这里输出的是2,,在32位系统中short占用的是2个字节*/
long *j;
f = sizeof *j;
printf ("%d\n", f);
/*long类型占用4个字节*/
float *k;
f = sizeof *k;
printf ("%d\n", f);
/*float类型占用4个字节*/
printf ("*********************************\n");
f = sizeof p;
printf ("%d\n", f);
f = sizeof d;
printf ("%d\n", f);
f = sizeof g;
printf ("%d\n", f);
f = sizeof h;
printf ("%d\n", f);
f = sizeof j;
printf ("%d\n", f);
f = sizeof k;
printf ("%d\n", f);
/*以上这几行输出的都是指向各种类型的指针本身,,,,在32位系统上输出的都是4*/
printf ("*********************************\n");
int a[100];
int l;
l = sizeof (a);
printf ("%d\n", l);
/*这一行输出的是400,,,及4*100一个4个字节a代表的是整个数组*/
l = sizeof (a[100]);
printf ("%d\n", l);
/*这里输出的是4,,a[100]只是代表第100个元素*/
l = sizeof (&a);
printf ("%d\n", l);
l = sizeof (&a[0]);
printf ("%d\n", l);
/*这里输出的是两个指向数组元素的指针,,,,指针所占的字节*/
int r[100];
fun(r);
/*这里就不同于上面400的情况,,,函数传递的是一个数组的指针*/
}
- 面试sizeof C语言各个类型占用字节书
- C语言基础 sizeof函数查看变量类型占多少字节
- C中 各个数据类型占用的字节数
- C语言各个数据类型字节数
- C语言变量类型和占用字节数以及值的范围小结
- C语言结构体类型占用的内存空间,需要考虑字节对齐
- c语言结构体类型占用的内存空间,需要考虑字节对齐
- C/C++面试(5)——sizeof字节计算
- 类型占用字节空间
- C语言 sizeof 整型提升 类型转换
- 不使用sizeof求int或者其他类型占用的字节数
- c/c++ 各个类型所占的字节数
- C语言中sizeof()求字节数的应用举例
- C 语言各个数据类型所占字节数
- C语言里的数据类型的大小及占用字节
- 为什么C语言中bool型变量占用一个字节
- C语言计算结构体占用字节大小总数
- C++primer 5.8sizeof 操作符--上(不同类型所占用的内存大小字节)
- 基于Intel_x86体系结构的Linux_SMP系统启动过程
- java文本框使用Robot实现光标的自动跳转
- XML文件处理
- DCL
- java编写比较对象相等equals方法
- 面试sizeof C语言各个类型占用字节书
- LinuxRAR
- 对不起,祖国---我是否扯到你的蛋了!!
- C++拷贝构造函数以及运算符重载例子 (Linux 下编译)
- 正式开始了
- java打印表格到打印机
- JPA批注参考文档
- 要走向程序员之路了
- busybox 致命错误: curses.h:没有那个文件或目录