C语言数组基本概念及操作

本文详细介绍了C语言中的一维数组、二维数组、字符数组的基本概念和操作,包括数组大小、内存分配、指针和引用的使用实例,帮助读者理解C语言中的数据组织方式。
摘要由CSDN通过智能技术生成

#include <stdio.h>
#include <stdlib.h>
int main()
{
	/*************************数据基本概念及操作*************
		1、不允许拷贝,即arr2=arr1
	
	*/
	
	//一维数组
	int score1[10];
	int score2[10] = {1,2,3};
	int score3[] = {1,2,3};
	printf("sizeof(score1)=%d,sizeof(score2)=%d,sizeof(score3)=%d\n", sizeof(score1), sizeof(score2), sizeof(score3));
	// 40 40 12
	//字符数组
	char a1[] = { 'c','+','+' };//没有空字符
	char a2[] = "c++";			//自动添加空字符
	printf("a1=%s\n", a1); //乱码 a2 = c++烫烫烫烫 ?
	printf("a2=%s\n", a2);
	//二维数组
	int arr1[2][3] =
	{
		{ 1,2,3 },
		{ 4,5,6 }
	};
	int arr2[2][3] = { 1,2,3,4,5,6 };
	int arr3[][3] = { 1,2,3,4,5,6 };
	printf("sizeof(arr1)=%d,sizeof(arr1[0])=%d\n ", sizeof(arr1), sizeof(arr1[0]));
	//24(二维数组大小) 12(行大小)
	printf("二维数组首地址=%x,二维数组第一行首地址=%x\n ", arr1, arr1[0]);
	//区别 +1含义不同
	printf("arr1+1表示第二个元素=%d,arr1[0]+1后表示第二行元素=%d\n ", **(arr1+1), *(arr1[0]+1));

	//组合类型
	int *p[10];				//含有10个整数指针的数组
	int(*p1)[10] = &score1;//指向一个含有10个整数的指针
	int(&p2)[10] = score1; //引用一个含有10个整数的数组

	getchar();
	return 0;
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值