注册 登录
编程论坛 C++教室

动态数组的问题

a14290719 发布于 2011-11-26 01:16, 575 次点击
int *s=new int[5];
int *w=s;               
for(int a=0;a!=5;a++,++w)为啥要有指针w  直接用s赋值为啥 输出是乱数                for(int a=0;a!=5;a++,s++)
*w=4;                                                                              *s=4; 这样就输出的不对
for(int a=0;a!=5;a++,++s)
cout<<*s;
2 回复
#2
rjsp2011-11-26 08:25
你用s++,那么s就被改变了,不再指向最初的 net int[5]

int* s = new int[5];
for( int i=0; i<5; ++i )
    s[i] = 4;

for( int* p=s; p<s+5; ++p )
    *p = 4;
#3
qq6054122542011-11-26 08:29
s应该是常数不是变量,不能自加。自加就会出错
1