zoukankan      html  css  js  c++  java
  • C奇特的声明

    声明时可以使用的修饰符
    修饰符 含义
    * 表示一个指针
    () 表示一个函数
    [] 表示一个数组

     C允许使用多个修饰符,这就使得可以创建如下各种各样的类型:

    int board[8][8]; // int数组的数组
    int **ptr; // 指向int的指针的指针
    int *risks[10]; // 具有10个元素的数组,每个元素是一个指向int的指针
    int (* risks)[10]; // 一个指针,指向具有10个元素的int数组
    int * oof[3][4]; // 一个3*4的数组,每个元素是一个指向int的指针
    int (* uuf)[3][4]; // 一个指针,指向3*4的int数组
    int (* uof[3])[4]; // 一个具有3个元素的数组,每个元素是一个指向具有4个元素的int数组的指针
    

    修饰符的使用规则:

    1. 表示一个数组的[]和表示一个函数的()具有相同的优先级,且高于间接运算符*的优先级。

    int * risks[10]; // risks是一个指针数组,而不是指向数组的指针

    2. []和()都是从左到右进行结合的。

    int goods[12][50]; // goods是一个由12个具有50个int值的数组结构组成的数组,而不是一个由50个具有12个int值的数组结构组成的数组

    3. ()还可以解释成普通的圆括号。

    int (* rusks)[10]; // risks是一个指向数组的指针
    int * oof[3][4]; // oof是一个具有3*4个int *类型元素的二维数组
    int (* uuf)[3][4]; // uuf是一个指向具有3*4个int类型元素的二维数组的指针

    使用typedef建立一系列相关的类型:

    typedef int arr5[5];
    typedef arr5 * p_arr5;
    typedef p_arr5 arrp10[10]; 
  • 相关阅读:
    web页面性能优化之接口前置
    python大佬养成计划----flask_bootstrap装饰网页
    撸个查询物流的小程序,欢迎体验
    FullCalendar插件的基本使用
    GeekforGeeks Trie
    使用Django和Python创建Json response
    nginx-gridfs的安装
    Linux kernel config and makefile system
    hadoop日志分析
    安装STS报错(三)
  • 原文地址:https://www.cnblogs.com/qwertWZ/p/2869544.html
Copyright © 2011-2022 走看看