C 不确定如何初始化此局部变量
我是c的初学者,我不能初始化它 局部变量dotP。当我运行它给出的代码时 me此错误:错误C4700:使用了未初始化的局部变量“dotP”。 请告诉我代码以及在哪里插入初始化代码。 如有任何其他更正,将不胜感激C 不确定如何初始化此局部变量,c,C,我是c的初学者,我不能初始化它 局部变量dotP。当我运行它给出的代码时 me此错误:错误C4700:使用了未初始化的局部变量“dotP”。 请告诉我代码以及在哪里插入初始化代码。 如有任何其他更正,将不胜感激 #include<stdio.h> #include "stdafx.h" #include <stdlib.h> #include <time.h> #define N 10 float AUX; typedef struct c
#include<stdio.h>
#include "stdafx.h"
#include <stdlib.h>
#include <time.h>
#define N 10
float AUX;
typedef struct complex{
double a;
double b;
}complex;
double randN(double min, double max){
double range = (max - min);
double div = max / range;
return min + (rand() / div);
}
void fillVector(complex* v1, complex* v2){
int i = 0;
for (i = 0; i< N; i++){
v1[i].a = randN(0, 100);
v1[i].b = randN(0, 100);
v2[i].a = randN(0, 100);
v2[i].b = randN(0, 100);
}
}
void calculate(complex* v1, complex* v2){
int i = 0, j = 0;
complex dotP;
complex c1, c2;
for (i = 0; i< N; i++){
for (j = 0; j <N; j++){
c1.a = v1[i].a;
c1.b = v1[i].b;
c2.a = v2[j].a; c2.b = v2[j].b;
//
dotP.a += ((c1.a*c2.a) - (c1.b*c2.b)); /* take care of real part */
dotP.b += ((c1.a*c2.b) + (c1.b*c2.a)); /*take care of imaginary */
}
}
}
int main()
{
clock_t begin, end;
double time_spent;
complex* v1 = (complex *)malloc(sizeof(complex)*N);
complex* v2 = (complex *)malloc(sizeof(complex)*N);
begin = clock(); /* init clock */
calculate(v1, v2); /*consume time */
end = clock(); /*stop clock */
time_spent = (double)(end - begin) / CLOCKS_PER_SEC;
printf("Elapsed: %f seconds\n", (double)(end - begin) / CLOCKS_PER_SEC);/*showdata*/
return 0;
}
#包括
#包括“stdafx.h”
#包括
#包括
#定义n10
浮动辅助;
typedef结构复合体{
双a;
双b;
}复杂的;
双随机数(双最小值,双最大值){
双量程=(最大-最小);
双div=最大值/范围;
返回最小值+(rand()/div);
}
无效填充向量(复数*v1,复数*v2){
int i=0;
对于(i=0;i
complex dotP;
...
dotP.a = 0.0;
dotP.b = 0.0;
或
这个网站是一个初学者和编程大师的地方。请保留它。很快我也会和你们一起解决人们的问题。
complex dotP = {0.0, 0.0};