如何向指针数组添加元素? 我试图通过编写一些例子来理解C++中的指针。我尝试创建一个指针数组,但当我尝试向其中添加整数时,它无法正常工作。我想将0到9之间的整数添加到指针数组并打印它 int *array; array = new int[10]; for(int i=0; i<10; i++){ *array[i] = i; cout<<*array<<endl; } int*数组; 数组=新整数[10]; 对于(int i=0;i
在如何向指针数组添加元素? 我试图通过编写一些例子来理解C++中的指针。我尝试创建一个指针数组,但当我尝试向其中添加整数时,它无法正常工作。我想将0到9之间的整数添加到指针数组并打印它 int *array; array = new int[10]; for(int i=0; i<10; i++){ *array[i] = i; cout<<*array<<endl; } int*数组; 数组=新整数[10]; 对于(int i=0;i,c++,C++,在数组中分配某物,否则您希望它如何保存某物。(除非您将其指向已分配的内存) 或者分配array=pInt,然后您可以使用它来保存值。array[i]=i 例如: #include <iostream> using namespace std; int main() { int *a; // int *b; // b= new int[10]; we can simply allocate it to 'a' directly // a = b;
数组中分配某物,否则您希望它如何保存某物。(除非您将其指向已分配的内存)
或者分配array=pInt
,然后您可以使用它来保存值。array[i]=i
例如:
#include <iostream>
using namespace std;
int main()
{
int *a;
// int *b;
// b= new int[10]; we can simply allocate it to 'a' directly
// a = b;
a = new int[10];
for(int i=0;i<5;i++)
a[i]=i;
for(int i=0;i<5;i++)
cout<<a[i];
delete[] a;
return 0;
#包括
使用名称空间std;
int main()
{
int*a;
//int*b;
//b=新整数[10];我们可以直接将其分配给“a”
//a=b;
a=新整数[10];
对于(int i=0;i在数组中分配某物,否则您希望它如何保存某物。(除非您将其指向已分配的内存)
或者分配array=pInt
,然后您可以使用它来保存值。array[i]=i
例如:
#include <iostream>
using namespace std;
int main()
{
int *a;
// int *b;
// b= new int[10]; we can simply allocate it to 'a' directly
// a = b;
a = new int[10];
for(int i=0;i<5;i++)
a[i]=i;
for(int i=0;i<5;i++)
cout<<a[i];
delete[] a;
return 0;
#包括
使用名称空间std;
int main()
{
int*a;
//int*b;
//b=新整数[10];我们可以直接将其分配给“a”
//a=b;
a=新整数[10];
对于(int i=0;i而言,以下将执行您所描述的操作:
#include <iostream>
int main()
{
int* array = new int[10];
for (int i = 0; i < 10; ++i)
{
array[i] = i;
std::cout << array[i] << std::endl;
}
delete [] array;
return 0;
}
#包括
int main()
{
int*数组=新的int[10];
对于(int i=0;i<10;++i)
{
数组[i]=i;
std::cout以下内容将完成您所描述的操作:
#include <iostream>
int main()
{
int* array = new int[10];
for (int i = 0; i < 10; ++i)
{
array[i] = i;
std::cout << array[i] << std::endl;
}
delete [] array;
return 0;
}
#包括
int main()
{
int*数组=新的int[10];
对于(int i=0;i<10;++i)
{
数组[i]=i;
std::cout您为pInt分配了10个整数的内存,但没有为array分配任何内存。由于array没有分配任何内存,因此它无法保存数据。一种解决方案是只使用pInt变量。注意,如果您有*array[i]=i;
则无需将*作为方括号[]取消对指针的引用。这样您就可以将该行替换为pInt[i]=i;
那么如果调用cout则为pInt分配了10个整数的内存,但没有为array分配任何内存。由于array没有分配任何内存,所以它无法保存数据。一种解决方案是只使用pInt变量。注意,这里有*array[i]=i;
无需使用*取消引用,因为括号[]取消引用指针。因此,您可以使用pInt[i]=i;
替换该行,然后如果调用cout,则应将变量声明为
int *array=new int;
试试这个
int *array=new int;
int *pInt = new int[10];
for(int i=0; i<10; i++){
*array = i;
cout<<*array<<endl;
}
int *array=new int[10];
int *pInt = new int[10];
for(int i=0; i<10; i++){
array[i] = i;
cout<<array[i]<<endl;
}
int*数组=新的int;
int*pInt=新int[10];
对于(inti=0;i,您应该将变量声明为
int *array=new int;
试试这个
int *array=new int;
int *pInt = new int[10];
for(int i=0; i<10; i++){
*array = i;
cout<<*array<<endl;
}
int *array=new int[10];
int *pInt = new int[10];
for(int i=0; i<10; i++){
array[i] = i;
cout<<array[i]<<endl;
}
int*数组=新的int;
int*pInt=新int[10];
对于(int i=0;iarray
在没有初始化的情况下使用。行为未定义。您为pInt
分配存储,但为array
分配存储,然后尝试为array
分配值。改用pInt
。@NickyC.:我的解决方案有什么问题吗?@NickyC.:有人否决了我的解决方案请求离子随机……-\u-@coderredoc为什么命名我?array
没有初始化。行为未定义。您为pInt
分配存储,但为array
分配存储,然后尝试为array
分配值。改为使用pInt
。@NickyC.:我的解决方案有什么问题吗?@NickyC:有人在随机否决我的解决方案问题……-\u-@coderredoc你为什么叫我?DV的原因?我不明白DV的原因…有人吗?嗯…可能?或者内存泄漏?拥有原始指针?不必要的变量?@NickyC:现在检查答案。希望有帮助..谢谢你的输入。@NickyC:是的,我们可以,但我刚才展示了操作清除空的a
案例。是的,我会修改它。DV的原因??我不明白DV的原因…有人吗?嗯…也许?或者内存泄漏?拥有原始指针?不必要的变量?@NickyC:现在检查答案。希望它有帮助。。感谢您的输入。@NickyC:是的,我们可以,但我刚才显示了操作清除em“现代C++模式是使用<代码> EpthyRead <代码> >代替<代码> PuthSubje>代码>或代码> STD::IOTA(STD::开始(V),STD::结束(V),0);< C++ >方式是使用<代码> EpStRead < /COD> >代替<代码> PuxSuff< <代码>或 STD::IOTA(STD::开始(V),STD::(V),0);< /C> PTY代码