C语言 数组类型与数组指针类型
//数组类型与数组指针类型
#include<stdio.h>
#include<stdlib.h>
#include<string.h> void main(){
printf("\n-------数组类型----------\n");
{
//定义一个数组类型
typedef int Myarr[];//定义了一个int型有5个元素的数组类型
//定义一个数组类型变量
Myarr myarr;
//数组赋值
int i = ;
for (i = ; i < ; i++)
{
myarr[i] = i * ;
}
//打印数组的值
for (i = ; i < ; i++)
{
printf("%d\n", myarr[i]);
}
}
printf("\n-------数组指针类型①----------\n");
{
//首先定义一个数组类型
typedef int Myarr[];
//定义一个数组指针变量 类比: int a; int *pa;
Myarr * pmyarr = NULL;
//定义一个数组
Myarr a;
//定义一个数组指针
pmyarr = &a;
//为数组赋值
int i = ;
for (i = ; i < ; i++)
{
(*pmyarr)[i] = i + ;
}
//打印数组
for (i = ; i < ; i++)
{
printf("%d\n", (*pmyarr)[i]);
}
}
printf("\n-------数组指针类型②----------\n");
{
//定义一个数组指针类型
typedef int(*PArrType)[];
//定义数组指针变量
PArrType parr = NULL;
int a[] = { };
parr = &a;
//为数组赋值
int i = ;
for (i = ; i < ; i++)
{
(*parr)[i] = i + ;
}
//打印数组
for (i = ; i < ; i++)
{
printf("%d\n", (*parr)[i]);
}
}
printf("\n-------数组指针类型③----------\n");
{
//直接定义数组指针变量
int(*parr)[];
int a[] = { };
parr = &a;
//为数组赋值
int i = ;
for (i = ; i < ; i++)
{
(*parr)[i] = i + ;
}
//打印数组
for (i = ; i < ; i++)
{
printf("%d\n", (*parr)[i]);
} }
system("pause");
}
C语言 数组类型与数组指针类型的更多相关文章
- Swift中对C语言接口缓存的使用以及数组、字符串转为指针类型的方法
由于Swift编程语言属于上层编程语言,而Swift中由于为了低层的高性能计算接口,所以往往需要C语言中的指针类型,由此,在Swift编程语言刚诞生的时候就有了UnsafePointer与Unsafe ...
- 【原创】go语言学习(九)指针类型
目录 变量和内存地址 指针类型 值拷贝和引用拷贝 变量和内存地址 1.每个变量都有内存地址,可以说通过变量来操作对应大小的内存 var a int32 a = 100 fmt.Printf(“%d\n ...
- c语言中的结构体指针类型的cast
1.我们在c语言中会经常碰到强制类型转换. 在这,我介绍一种结构pointer类型转换,但是有前提(有点类似于c++中的继承中的子父对象的cast). 简单的介绍一下: 首先我们要知道一个结构的指针, ...
- C语言 指针基础篇 数组,函数与指针的运用 2 14
下面看看如何在函数中运用指针吧 下面是往函数传入指针的简单操作,不是传入数组的.判断一个a是否大于b是的话给,是的话对其进行操作,不是的话就直接返回. #include <stdio.h> ...
- 嵌入式-C语言基础:指针数组(和数组指针区分开来)
指针数组:一个数组,若其元素均为指针类型的数据,称为指针数组,指针数组存放的是指针类型的数据,也就是指针数组的每个元素都存放一个地址.下面定义一个指针数组: int * p[4];//[]的优先级是比 ...
- go语言入门(6)复合类型
1,分类 2,指针 指针是一个代表着某个内存地址的值.这个内存地址往往是在内存中存储的另一个变量的值的起始位置. 1)基本操作 Go语言虽然保留了指针,但与其它编程语言不同的是: 默认值 nil,没有 ...
- 指针类型(C# 编程指南)
原文地址:https://msdn.microsoft.com/zh-cn/library/y31yhkeb.aspx 在不安全的上下文中,类型可以是指针类型.值类型或引用类型. 指针类型声明采用下列 ...
- C#基础指针类型
在C#的不安全的代码书写中,类型可以是指针类型.值类型或引用类型. 指针类型声明具有下列形式之一: type* identifier; void* identifier; //allowed bu ...
- 不同平台下int类型、指针类型的数据大小
不同平台下int类型.指针类型的数据大小 对于int类型数据和指针类型数据的大小,是非常基础的问题. 在一个具体的平台上,确定他们最好的办法就是使用sizeof(type)对其进行判断,返回当前数据类 ...
- golang中值类型的嵌入式字段和指针类型的嵌入式字段
总结: 1. 值类型的嵌入式字段,该类型拥有值类型的方法集,没有值指针类型的方法集 2. 指针类型的嵌入式字段,该类型拥有值指针类型的方法集,没有值类型的方法集,并且,该类型的指针类型也有值指针类型的 ...
随机推荐
- Static Cell-静态TableView
使用静态TableView有两个前提,1.要在Storyboard上 2.需要使用TableViewController PS:如果需要设置不同的cell的高度不同的话,还是需要使用tableVie ...
- img 在层内 居中显示
div{width:250px;height:150px;background:#000;position:relative;} img{;;;;margin: auto;} <div>& ...
- iOS 自定义Actionsheet
自定义的Actionsheet效果如下 自定义的思路 1.在window上添加两个图层,背景层和功能层,如下图 2.设置背景层的背景色和透明度,并在背景层上添加点击事件 3.将自定义的view添加为功 ...
- 快速排序(java版)
public class QuickSortTest{ //比较与交换 private static int partition(int[] source, int low, int hight) { ...
- Objective-C的IO流
- 纪录JVM内存模型内容
声明:本内容是博主在牛客网上看到的网友发表的答案,因为感觉总结的比较好,所以摘抄过来供大家学习. 内容: 大多数 JVM 将内存区域划分为 Method Area(Non-Heap)(方法区) ,He ...
- (甲)PAT-1001
1001. A+B Format (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B Calculate a + b and output the sum ...
- 长文件名导致的0x80070057
今天遇到件怪事. 把一个视频集(86G)从电脑硬盘转移动硬盘的时候里面时报里面的两个文件夹里的视频和字幕不能复制 错误代码0x80070057 这个视频集是从校内PT是下下来的,电脑是联想Y560-w ...
- PS网页设计教程XXVII——设计一个大胆和充满活力的作品集
作为编码者,美工基础是偏弱的.我们可以参考一些成熟的网页PS教程,提高自身的设计能力.套用一句话,“熟读唐诗三百首,不会作诗也会吟”. 本系列的教程来源于网上的PS教程,都是国外的,全英文的.本人尝试 ...
- Linux 下编译安装软件,找不到共享库 xx.so 的解决办法
编译memcached时,报错没有libevent,于是下载libevent,configure , make && make install ,然后在重新安装memcache成功之后 ...