sizeof和strlen是C语言中两个不同的操作符,它们的主要区别在于用途和功能:
sizeof是一个运算符,用于计算数据类型或对象所占用的内存大小(以字节为单位)。sizeof的结果是一个无符号整数。例如,sizeof(int)将返回int类型在当前系统和编译器下所占的字节数。#include <stdio.h>int main() { printf("Size of int: %zu bytes\n", sizeof(int)); return 0;}strlen是一个函数,用于计算字符串的长度(不包括空字符\0)。strlen的返回值是一个无符号整数,表示字符串中字符的数量。例如,strlen("hello")将返回5,因为字符串"hello"包含5个字符。#include <stdio.h>#include <string.h>int main() { char str[] = "hello"; printf("Length of string: %zu\n", strlen(str)); return 0;}总结一下,sizeof用于计算数据类型或对象的大小,而strlen用于计算字符串的长度。需要注意的是,sizeof是针对变量或数据类型的,而strlen是针对字符串的。


