zoukankan      html  css  js  c++  java
  • c/c++ 获取数组长度


    在C/C++中并没有提供直接获取数组长度的函数

    c/c++ 获取数组长度其中一种方法是使用sizeof(array) / sizeof(array[0])。

    在C语言中习惯上在使用时都把它定义成一个宏,比如:

    #define GET_ARRAY_LEN(array,len) {len = (sizeof(array) / sizeof(array[0]));}

    而在C++中则可以使用模板技术定义一个函数,比如:

    template <class T>
    int getArrayLen(T& array)
    {
    return (sizeof(array) / sizeof(array[0]));
    }

    这样对于一些简单的数组可以使用这个宏或者这个函数来获取数组的长度了。

    c语言用法:
    #define GET_ARRAY_LEN(array,len) {len = (sizeof(array) / sizeof(array[0]));}
    //定义一个带参数的宏,将数组长度存储在变量len中
    int main()
    {
    char a[] = {'1','2','3','4'};
    int len;

    GET_ARRAY_LEN(a,len)
    //调用预定义的宏,取得数组a的长度,并将其存储在变量len中
    }


    c++用法:
    int main()
    {
    char a[] = {'1','2','3'};
    cout << getArrayLen(a) << endl;
    }

  • 相关阅读:
    hexo博客安装教程
    MySQL 索引
    linux笔记
    Matab:plot图形操作
    Verilog--DC
    Verilog--二进制编码到格雷码的转换
    Undefined symbol SystemInit (referred from startup_stm32f10x_md.o).
    电源设计
    蓝牙通信
    quartus II的USB Blaster驱动器安装
  • 原文地址:https://www.cnblogs.com/zqifa/p/c-array-2.html
Copyright © 2011-2022 走看看