【发布时间】:2013-08-13 02:05:24
【问题描述】:
我有这个代码
for (k=0; k<BUFFER_LEN; k++){
buffer[k] = sin(2*pi*f/fs*k); //sine generation
我的循环每次递增 1 - 因此每次计算的 k 将是 1、2、3、4、5.... 等
例如,我希望循环每次增加 0.1,所以我的正弦计算更准确? 实现这一目标的最简单方法是什么?我尝试在那个 for 循环中增加 0.1,但不认为这是允许的,因为程序超时
编辑:这是一个解决方案
int i, k;
float z=0.1;
for(i = 0; i < BUFFER_LEN; i++){ // fill the buffer
buffer[k] = sin(2*pi*f/fs*z); // sine wave value generation
z = z + 0.1;
}
【问题讨论】:
-
您是否将
int增加.1添加.1只会让您返回相同的数字,因为截断?如果您提供SSCCE 会更有帮助。 -
这个问题需要更多信息来了解您希望在循环结束时在
buffer中拥有什么。
标签: c loops for-loop increment