//数组类型与数组指针类型
#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语言 数组类型与数组指针类型的更多相关文章

  1. Swift中对C语言接口缓存的使用以及数组、字符串转为指针类型的方法

    由于Swift编程语言属于上层编程语言,而Swift中由于为了低层的高性能计算接口,所以往往需要C语言中的指针类型,由此,在Swift编程语言刚诞生的时候就有了UnsafePointer与Unsafe ...

  2. 【原创】go语言学习(九)指针类型

    目录 变量和内存地址 指针类型 值拷贝和引用拷贝 变量和内存地址 1.每个变量都有内存地址,可以说通过变量来操作对应大小的内存 var a int32 a = 100 fmt.Printf(“%d\n ...

  3. c语言中的结构体指针类型的cast

    1.我们在c语言中会经常碰到强制类型转换. 在这,我介绍一种结构pointer类型转换,但是有前提(有点类似于c++中的继承中的子父对象的cast). 简单的介绍一下: 首先我们要知道一个结构的指针, ...

  4. C语言 指针基础篇 数组,函数与指针的运用 2 14

    下面看看如何在函数中运用指针吧 下面是往函数传入指针的简单操作,不是传入数组的.判断一个a是否大于b是的话给,是的话对其进行操作,不是的话就直接返回. #include <stdio.h> ...

  5. 嵌入式-C语言基础:指针数组(和数组指针区分开来)

    指针数组:一个数组,若其元素均为指针类型的数据,称为指针数组,指针数组存放的是指针类型的数据,也就是指针数组的每个元素都存放一个地址.下面定义一个指针数组: int * p[4];//[]的优先级是比 ...

  6. go语言入门(6)复合类型

    1,分类 2,指针 指针是一个代表着某个内存地址的值.这个内存地址往往是在内存中存储的另一个变量的值的起始位置. 1)基本操作 Go语言虽然保留了指针,但与其它编程语言不同的是: 默认值 nil,没有 ...

  7. 指针类型(C# 编程指南)

    原文地址:https://msdn.microsoft.com/zh-cn/library/y31yhkeb.aspx 在不安全的上下文中,类型可以是指针类型.值类型或引用类型. 指针类型声明采用下列 ...

  8. C#基础指针类型

    在C#的不安全的代码书写中,类型可以是指针类型.值类型或引用类型. 指针类型声明具有下列形式之一:   type* identifier; void* identifier; //allowed bu ...

  9. 不同平台下int类型、指针类型的数据大小

    不同平台下int类型.指针类型的数据大小 对于int类型数据和指针类型数据的大小,是非常基础的问题. 在一个具体的平台上,确定他们最好的办法就是使用sizeof(type)对其进行判断,返回当前数据类 ...

  10. golang中值类型的嵌入式字段和指针类型的嵌入式字段

    总结: 1. 值类型的嵌入式字段,该类型拥有值类型的方法集,没有值指针类型的方法集 2. 指针类型的嵌入式字段,该类型拥有值指针类型的方法集,没有值类型的方法集,并且,该类型的指针类型也有值指针类型的 ...

随机推荐

  1. C标准库<assert.h>实现

    本文地址:http://www.cnblogs.com/archimedes/p/c-library-assert.html,转载请注明源地址. 1.背景知识 头文件<assert.h>唯 ...

  2. 基础学习day06---面向对象二---static,类的初始化和调用顺序、单例模式

    一.static关键字 1.1.static关键字 静态:static用法:是一个修饰符,用于修饰成员(成员变量,成员函数)static 修饰的内容,所有对象共享当成员被静态修饰后,就多了一个调用方式 ...

  3. 当碰到非ARC写的文件时在ARC环境下运行报错时解决办法

  4. 分析实现Android自定义View之扇形图

    继承View基类,画了这样的扇形图 直接来步骤吧 (参考了GcsSloop的教程) 1.分析 自定义View需要认真的分析下,里面还是会用到一些数学知识 首先是扇形该怎么表现 1. 扇形的外观是个圆弧 ...

  5. 快速排序(java版)

    public class QuickSortTest{ //比较与交换 private static int partition(int[] source, int low, int hight) { ...

  6. 解决springmvc中文件下载功能中使用javax.servlet.ServletOutputStream out = response.getOutputStream();后运行出异常但结果正确的问题

    问题描述: 在springmvc中实现文件下载功能一般都会使用javax.servlet.ServletOutputStream out = response.getOutputStream();封装 ...

  7. 基于XML配置的Spring MVC 简单的HelloWorld实例应用

    1.1 问题 使用Spring Web MVC构建helloworld Web应用案例. 1.2 方案 解决本案例的方案如下: 1. 创建Web工程,导入Spring Web MVC相关开发包. Sp ...

  8. 本地数据下,radiobutton和图片组合,利用adapter+listview进行单选

    浮生偷得半日闲,等接口定义的过程中,重新复习下adapter+listview实现单选的方法 主界面 <RelativeLayout xmlns:android="http://sch ...

  9. BI Project Managerment

    Design doc is the meta data of the code. The project management plan is crucial to your project sinc ...

  10. 探索 OpenStack 之(11):cinder-api Service 启动过程分析 以及 WSGI / Paste deploy / Router 等介绍

    OpenStack 中的每一个提供 REST API Service 的组件,比如 cinder-api,nova-api 等,其实是一个 WSGI App,其主要功能是接受客户端发来的 HTTP R ...