atoi的问题

来源:百度知道 编辑:UC知道 时间:2024/06/04 00:59:22
为什么数组不能等于atoi转换成的整数呢?例如:i[2]=atoi(pow);就会把地址而不是数字传给i[2]。
不是啊,我的写了个小程序你看看:
#include "iostream"
using namespace std;
int main()
{int i[10],j;
char a[10];
cin.getline(a,10);
i[1]=atoi(a);
cout<<i;
return 0;
}
结果是:
12
0013FF58Press any key to continue
2楼的程序我也试过了,答案和前面的运行出来一样,还是不对,奇怪了……

#include "iostream"
using namespace std;
int main()
{int i[10],j;
char a[10];
cin.getline(a,10);
i[1]=atoi(a);
cout<<i; //i当然是地址,是数组的首地址,
        //应该用i[1],楼主好好复习一下
return 0;
}

int atoi(char *nptr) 将字符串nptr转换成整型数, 并返回这个数,错误返回0

int main()
{int i[10],j;
char a[10];
for(j=0;j<10;j++){
gets(a);
i[j]=atoi(a);
}

for(j=0;j<10;j++)
printf("\n%d",i[j]);

#include "iostream"
using namespace std;
int main()
{int i,j;
char a[10];
cin.getline(a,10);
i=atoi(a);
cout<<i;
return 0;
}

老大,你是给i[1]赋值的,你输出i的地址干什么,当然要
cout<<i[1];啊