在C语言中将整型数组转换为浮点型数组

3

有人知道如何将整数数组转换为浮点数数组吗?


-1:展示你已经完成的工作,并告诉我们你在方法上遇到了什么困难? - yasouser
抱歉,我的措辞可能有些不当 - 当我发布问题时很匆忙。我已经声明了整数数组,并需要将其作为参数传递给需要浮点数数组的函数。现在我明白了,我需要创建一个新的数组。感谢您的回复! - JupiterOrange
@yasouser +1...人性恢复了。 - euraad
2个回答

4

您的问题表述不够清晰;但是,假设您已经声明了整型数组,可以尝试以下方法:

// instantiate float array    
float fArray[sizeOfIntArray];

// step through each element of integer array, and copy into float array as float   
for(int i = 0; i < sizeOfIntArray; ++i) {
    fArray[i] = (float)iArray[i];
}

@Armin,我不明白?你是什么意思? - jarrodparkes
我的错误。我发表答案后很快就注意到了它们。感谢您的提醒。 - jarrodparkes

1

您无法将已经存在的数组进行转换。 但是,您可以执行以下操作以获得类似的结果:

int int_array[10];
float float_array[10];

int I = 0;

for (I=0; I<10; I++) {
      float_array[I] = (float)int_array[I];
}

这将当前的整数数组复制到另一个浮点数数组中。 我考虑整数数组的大小为10 您可以用您数组的大小来替换它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接