c - 将 vector A 按逆序转置为 B

标签 c vector

我有一个 vector A,有 6 个位置,各自的值为 {10,20,30,40,50,60},最初我有一个 vector B,有 4 个位置,各自的值为 {0,0,0,0我的问题是我需要以相反的顺序将 vector A 的值转置为 vector B。使用 for 循环如下所示:

i = 0:

B = {10,0,0,0}

i = 1:

B = {20,10,0,0}

i = 2:

B = {30,20,10,0}

i = 3:

B = {40,30,20,10}

i = 4:

B = {50, 40, 30, 20}

i = 5:

B = {60,50,40,30}

我这样做是为了用C实现颤音音频效果,我在Matlab中有算法,在Matlab中有一个特定的函数,它是:

B = [A (n); B (1: L-1)];

对于:

N = size of A

L = size of B

那么,谁能告诉我 C 语言中是否有任何函数可以执行此操作?

最佳答案

不,C 中没有现成的函数可以执行此操作。您需要编写一个简单的函数,该函数返回 4 个值的数组(整数?很难说)并接受 6 个值的数组。您也许可以找到一个外部库来为您执行此操作,但我对此表示怀疑,因为该函数很简单。

关于c - 将 vector A 按逆序转置为 B,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40618348/

相关文章:

检查 char array[] 是否包含 int、float 或 double 值并将值存储到相应的数据类型

c - 为什么sockaddr_storage 结构定义为它定义的方式?

c++ - 在 GMP 中使用载体

c++ - Memcpy 和结构

matlab - 将向量的索引转换为其内容,反之亦然

c - “找不到 CMAKE_c_COMPILER”与 CMake

c# - 函数中过早返回的效率

c - 使用 PIC 18F4550 使 3 个 LED 闪烁

c++ - vector 的返回 vector

c++ - 新手编码器在这里 : C++ Copying vector into array using functions