C语言基础知识篇三
数组名有两种情况代表的是整个数组:
1、sizeof(arr)//整个数组的字节大小
2、&arr+1;//数组最后一个元素的后面
3.访问数组当中元素的方法:
(1).可以通过下标去访问
(2).通过指针的形式访问
4.什么是数组:相同类型的数据集合
5、数组存放在哪个位置??方法内
6、数组什么时候确定大小?5 编译
7、什么时候给数组分配内存?? 运行
8、数组越界的原理是什么??? 哨兵位
9、最多分配多大的内存???栈大小 1M-2M
10、sizeof():求字节数,包括‘\0’;
strlen():字符串的长度,不包括‘\0’
#include<stdio.h>
#include<string.h>
int main()
{
char str[100] = “abcdef”;
char *str2 = “abcdef”;
char str3[] = “abcdef”;
char str4[100] = “abcdef\0xyz”;
char *str5 = “abcdef\0xyz”;
char str6[] = “abcdef\0xyz”;
char str7[] = “abcdef\n\0”;
char *str8 = “abcdef\n\0”;
printf("%d,%d\n",sizeof(str),strlen(str));//100 6
printf("%d,%d\n",sizeof(str2),strlen(str2));//4 6
printf("%d,%d\n",sizeof(str3),strlen(str3));//7 6
printf("%d,%d\n",sizeof(str4),strlen(str4));//100 6
printf("%d,%d\n",sizeof(str5),strlen(str5));//4 6
printf("%d,%d\n",sizeof(str6),strlen(str6));//11 6
printf("%d,%d\n",sizeof(str7),strlen(str7));//9 7
printf("%d,%d\n",sizeof(str8),strlen(str8));//4 7
return 0;
}
strlen:遇到\0停止
所有的指针不管什么类型全部为4个字节。
int main()
{
char crr[5]={‘a’,‘b’,‘c’,‘d’,‘e’};//字符数组 默认会有一个’\0’
//’\0’ ‘0’ 0
char crr2[5]=“abcd”;//字符数组 默认会加’\0’
char crr3[]=“abcdef”;
char crr4[10]=“abcdef”
char crr5[10]=crr4;//error
//数组的整体赋值只有一次机会初始化
char *const str =“tulun”;//默认会有一个\0
printf("%s\n",str);
char ch1=0x00;//0
char ch2=‘0’;//48 ASCLL
char ch3=0;//0
char ch4=’\0’;//0
return 0;
}
C语言基础知识篇三
最新推荐文章于 2024-06-27 17:39:56 发布