繁体   English   中英

将第一个数字放入数组后for循环退出

[英]for loop exits after putting first number into array

我有一个小程序,要求一个数组的长度,并要求数字放入数组的位置。 到目前为止,它要求输入数组的长度,让我输入第一个数字,但随后会以非零状态退出。

#include <iostream>

int main ()
{
  int i;
  std::cout << "array length: ";
  std::cin >> i;
  int* myAarray = new int[i];
  for(int e=0, myArray; e<=i; e++){
      std::cout << "Number to put in:";
      int a;
      std::cin >> a;
      myArray[&e] = a;
  }


  return 0;
}

编辑:输入了错误的变量名,谢谢您的帮助!

这个循环

  for(int e=0, myArray; e<=i; e++){
      std::cout << "Number to put in:";
      int a;
      std::cin >> a;
      myArray[&e] = a;
  }

是错的。

有效循环可能像

  for ( int e = 0; e < i; e++ ){
      std::cout << "Number to put in:";
      int a;
      std::cin >> a;
      myArray[e] = a;
  }

我想指针的定义如下

int* myArray = new int[i];

代替

int* myAarray = new int[i];

那就是它的名字myArray。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM