代码之家  ›  专栏  ›  技术社区  ›  Jay

新int[25,2]的含义是什么?

c++
  •  8
  • Jay  · 技术社区  · 14 年前

    在下面的代码中,使用带逗号的第二个参数的含义是什么?

    int *num = new int[25,2];
    
    4 回复  |  直到 7 年前
        1
  •  18
  •   Eugen Constantin Dinca Chris Lohfink    14 年前

    那就是 comma operator 在操作中:它计算它的操作数,并返回最后一个操作数,在第2种情况下。 这相当于:

    int *num = new int[2];
    

    可以肯定地说 25,2 部分不是原意,除非这是个骗人的问题。

    编辑:谢谢你,迪迪埃·特罗塞特。

        2
  •  15
  •   Didier Trosset    14 年前

    这是逗号运算符的作用:它计算它的操作数并返回 最后的 一,在你的情况下2。这相当于:

    int *num = new int[2];
    
        3
  •  11
  •   Peter Alexander    14 年前

    您使用的是逗号运算符,这使得代码可以做一些您第一眼可能不希望看到的事情。

    逗号运算符计算lhs操作数,然后计算并返回rhs操作数。所以在这种情况下 25, 2 它将评估 25 (什么都不做)然后评估并返回 2 ,因此代码行等于:

    int *num = new int[2];
    
        4
  •  -1
  •   Hemprasad    12 年前

    //声明一维数组
    int[]array1=新int[5];

        // Declare and set array element values 
        int[] array2 = new int[] { 1, 3, 5, 7, 9 };
    
        // Alternative syntax 
        int[] array3 = { 1, 2, 3, 4, 5, 6 };
    
        // Declare a two dimensional array 
        int[,] multiDimensionalArray1 = new int[2, 3];
    
        // Declare and set array element values 
        int[,] multiDimensionalArray2 = { { 1, 2, 3 }, { 4, 5, 6 } };
    
        // Declare a  array 
        int[][] Array = new int[6][];
    
        // Set the values of the first array in the  array structure
        Array[0] = new int[4] { 1, 2, 3, 4 };