Wetts's blog

Stay Hungry, Stay Foolish.

0%

C-关键字-sizeof

转自:http://blog.sina.com.cn/s/blog_5da08c340100bmwu.html

概念

sizeof是C语言的一种单目操作符,如C语言的其他操作符++、–等。它并不是函数。

sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。 

使用方法

用于数据类型

sizeof使用形式: sizeof(type)

数据类型必须用括号括住: sizeof(int)

用于变量

sizeof使用形式: sizeof(var_name)sizeof var_name

说明

sizeof操作符不能用于函数类型,不完全类型(不完全类型指具有未知存储大小的数据类型)或位字段。

返回结果

sizeof操作符的结果类型是size_t

它在头文件中定义为: typedef unsigned int size_t

主要用途

  1. 主要用途是与存储分配和I/O系统那样的例程进行通信
1
2
3
void *malloc(size_t size);

size_t fread(void *ptr, size_t size, size_t nmemb, FILE * stream);
  1. 另一个的主要用途是计算数组中元素的个数。
1
void *memset(void *s, int c, sizeof(s));