Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C++中打印简单数组 我是一个GeHeNRN,当进入C++时,但基本上我尝试用下面的代码打印一个数组: #include <iostream> #include <string> #include <vector> #include <ctime> #include <numeric> #include <math.h> #include <iterator> #include "rect_plate.h" #include "numeric_constants.h" using namespace std; using std::vector; // function prototypes vector<double> generateRange(double a, double b, double c); double lengthX; double lengthY; double resX; double resY; double Nx = lengthX / resX; double Ny = lengthY / resY; double deltaX = lengthX / Nx; double deltaY = lengthY / Ny; // function to calculate array vector<double> generateRange(double a, double b, double c) { vector<double> array; while (a <= c) { array.push_back(a); a += b; // could recode to better handle rounding errors } return array; } vector<double> xSpace = generateRange(deltaX / 2, deltaX, lengthX); vector<double> ySpace = generateRange(deltaY / 2, deltaY, lengthY); int main() { // print array for (int i = 0; i < Nx - 1; i++) { cout << "Test" << xSpace[i] << endl; } system("pause"); return 0; }_C++ - Fatal编程技术网

在C++中打印简单数组 我是一个GeHeNRN,当进入C++时,但基本上我尝试用下面的代码打印一个数组: #include <iostream> #include <string> #include <vector> #include <ctime> #include <numeric> #include <math.h> #include <iterator> #include "rect_plate.h" #include "numeric_constants.h" using namespace std; using std::vector; // function prototypes vector<double> generateRange(double a, double b, double c); double lengthX; double lengthY; double resX; double resY; double Nx = lengthX / resX; double Ny = lengthY / resY; double deltaX = lengthX / Nx; double deltaY = lengthY / Ny; // function to calculate array vector<double> generateRange(double a, double b, double c) { vector<double> array; while (a <= c) { array.push_back(a); a += b; // could recode to better handle rounding errors } return array; } vector<double> xSpace = generateRange(deltaX / 2, deltaX, lengthX); vector<double> ySpace = generateRange(deltaY / 2, deltaY, lengthY); int main() { // print array for (int i = 0; i < Nx - 1; i++) { cout << "Test" << xSpace[i] << endl; } system("pause"); return 0; }

在C++中打印简单数组 我是一个GeHeNRN,当进入C++时,但基本上我尝试用下面的代码打印一个数组: #include <iostream> #include <string> #include <vector> #include <ctime> #include <numeric> #include <math.h> #include <iterator> #include "rect_plate.h" #include "numeric_constants.h" using namespace std; using std::vector; // function prototypes vector<double> generateRange(double a, double b, double c); double lengthX; double lengthY; double resX; double resY; double Nx = lengthX / resX; double Ny = lengthY / resY; double deltaX = lengthX / Nx; double deltaY = lengthY / Ny; // function to calculate array vector<double> generateRange(double a, double b, double c) { vector<double> array; while (a <= c) { array.push_back(a); a += b; // could recode to better handle rounding errors } return array; } vector<double> xSpace = generateRange(deltaX / 2, deltaX, lengthX); vector<double> ySpace = generateRange(deltaY / 2, deltaY, lengthY); int main() { // print array for (int i = 0; i < Nx - 1; i++) { cout << "Test" << xSpace[i] << endl; } system("pause"); return 0; },c++,C++,但是当我运行可执行文件时,我在控制台中没有得到任何输出。 我得到的只是“按键继续”,然后它退出控制台 我正在将我的一些程序MATLAB转换成OO-C++。我有一个带有对象的类设置,但现在删除了这些对象,以检查我的变量是否正确初始化。我知道C中有一个方法可以通过代码F10——我使用VS2017,当你把鼠标悬停在给定的变量上时,它显示了这个值,但是没有找到任何类似的C++,所以我只是打印或者至少现在打印所有的东西。p> 好的,让我们一步一步来 double lengthX; double lengt

但是当我运行可执行文件时,我在控制台中没有得到任何输出。 我得到的只是“按键继续”,然后它退出控制台


我正在将我的一些程序MATLAB转换成OO-C++。我有一个带有对象的类设置,但现在删除了这些对象,以检查我的变量是否正确初始化。我知道C中有一个方法可以通过代码F10——我使用VS2017,当你把鼠标悬停在给定的变量上时,它显示了这个值,但是没有找到任何类似的C++,所以我只是打印或者至少现在打印所有的东西。p> 好的,让我们一步一步来

double lengthX;
double lengthY;
double resX;
double resY;
这些变量的值是多少?C++规则表示它们都是0,因为它们是未初始化的全局,全局变量首先初始化为零。
double Nx = lengthX / resX;
double Ny = lengthY / resY;
这些变量的值是多少?从上一节可以看出,它是0.0/0.0。根据几乎普遍使用的IEEE标准,这是一个名为NaN的特殊数字,NaN代表“非数字”

double deltaX = lengthX / Nx;
double deltaY = lengthY / Ny;
这些变量的值是多少?lengthX为零,但Nx为NaN。根据IEEE标准,对NaN的任何操作都会导致另一个NaN,因此这些变量也是NaN

因此,在第一个参数中,您将使用NaN调用generateRange。这个表达式的值是多少?记住a是NaN

IEEE标准说,将NaN与任何东西进行比较都是错误的。因此,不会输入while循环,也不会向数组中添加任何内容


显然,代码的一般问题是,您从未为初始变量提供任何值。您应该为这些变量分配一些数字。然后,传统的做法是,在设置完所有变量后,从主函数内部调用generateRange,可能需要用户的输入。

什么应该加倍Nx=lengthX/resX;C……是一个调试器,是的,VisualStudio附带了一个非常类似的C++调试器。天哪,我没有初始化任何值。哈哈,这是我为OO设置一切的时候。哈哈,太早了。我还没喝过咖啡。lengthX和resX未初始化,所以Nx未定义。@JesperJuhl如果有一个我认为与NaN相同的上浮答案,则不会comparisons@LightnessRacesinOrbit说得好,我会说清楚的。我假设是标准的IEEE规则。
while (a <= c) {