(一)各种指针,sizeof和strlen的打印长度解析。
一,指针的解释。
指针是一个变量,它存储了一个内存地址,即指向另一个对象在内存中的位置。通过指针,我们可以访问并修改这个对象的值。在C和C++中,指针是一种很重要的概念,它常常用于动态内存分配、数组操作、函数调用等方面,是一种非常强大的工具。
二,数组名的理解。
1.数组名指的是数组首元素地址。
2.但是在c语言中有两个例外,a.sizeof(数组名),这里表示的是数组名表示整个数组,计算的是整个数组的大小,单位是字节。b.&数组名,这里的数组名表示整个数组,取出的是整个数组的地址。
除此之外所有的数组名都表示首元素地址
三,介绍一下sizeof和stelen的区别
1.首先strlen是一个库函数使用时需要引用#include<string.h>而sizeof是一个运算符号。
2.strlen计算的是’\0‘之前的字符个数,如果没有的话就会一直寻找,sizeof计算的是所占空间内存的大小,单位是字节。
3.strlen计算时不包含\0,而sizeof包含\0。
4.stelrn遇到\0时才结束;
5.sizeof的类型是unsigned int 是一个无符号的整型;
6.strlen只能用char做参数,sizeof可以用类型做参数;
7.strlen是计算字符串长度的他的参数类型是char*,字符数组名也是char*。参数类型是指针,而指针就是地址。
8.
共同点:返回类型都是size_t
不同点:sizeof()是操作符计算的是变量/类型所占空间的大小,单位是字节,\0也算进空间
strlen()是库函数,计算的是字符串长度,不计算\0
四,整型数组的各种形式的大小
sizeof的使用
1.整型 int a[ ]={1,2,3,4};
2.字符型 char[ ]={'a','b','c','d','e','f'};
打印结果
3.字符串型 char arr[ ]="abcdef";
打印结果
4.字符指针char* p=“abcdef”;
打印结果
5.二维数组 int a[3][4]={0};
打印结果
strlen的使用
1.字符型
CSDN-Ada助手: 不知道 C 技能树是否可以帮到你:https://edu.csdn.net/skill/c?utm_source=AI_act_c