在Python中使用没有最后一个元素的数组很简单,`array[:-1]`,这种排序的索引拼接在C中是如何工作的?

6rqinv9w  于 2023-04-11  发布在  Python
关注(0)|答案(1)|浏览(81)

在Python中,如果我有一个列表A,如果我想使用这个列表,而不包括列表中的最后一个元素,我可以使用array[:-1]

8wtpewkr

8wtpewkr1#

要在C中实现相同的结果,C是一种静态类型的编程语言,缺乏对动态数组(如Python列表)的内置支持,您需要手动操作数组。下面是如何在C中实现相同功能的示例:

#include <stdio.h>

int main() {
    int array[] = {1, 2, 3, 4, 5};
    int array_size = sizeof(array) / sizeof(array[0]); // calculate the size of the array
    int new_array_size = array_size - 1; // calculate the size of the new array without the last element

    int new_array[new_array_size]; // create a new array with the size of the new array

    // copy elements from the original array to the new array, excluding the last element
    for (int i = 0; i < new_array_size; i++) {
        new_array[i] = array[i];
    }

    // print the elements of the new array
    for (int i = 0; i < new_array_size; i++) {
        printf("%d ", new_array[i]);
    }

    return 0;
}

new_array是一个new array,其大小比原始数组array小一个。然后,除了最后一个元素,我们使用for循环将元素从原始数组复制到新数组。最后,我们打印新数组的成员以获得与array[:-1]等效的Python,它返回array的子列表,其中没有最后一个条目。

相关问题