C++ 改错

[复制链接]
查看11 | 回复5 | 2012-12-17 11:56:30 | 显示全部楼层 |阅读模式
这个标识符代表您的print_a函数的参数,c是数组名,这意味着,这是一个常量标识符。因此,在您使用的的循环语句价值的输出数组中的每个元素,其地址并没有改变。你的原函数C [10]参数更改为int *,它可以代表一个整数的指针变量,而不是打印* C + + c参数就行了。...
回复

使用道具 举报

千问 | 2012-12-17 11:56:30 | 显示全部楼层
你的print_a函数的参数中c这个标识符代表的是数组名,而这意思说这是一个常量的标识符。所以在你以后用循环语句输出数组中每个元素的值时,它的地址一直没变。你把原来函数中的c[10]参数改为int *c,这样可以代表一个整型指针变量,print中的c参数改为*C++就行了。...
回复

使用道具 举报

千问 | 2012-12-17 11:56:30 | 显示全部楼层
void print_a(int *c,int n){for(int i=0;i<n;i++)printf("c[%d]=%d\n",i,c);}...
回复

使用道具 举报

千问 | 2012-12-17 11:56:30 | 显示全部楼层
你打印的是地址,改为printf("c[%d]=%d\n",i,*c++);...
回复

使用道具 举报

千问 | 2012-12-17 11:56:30 | 显示全部楼层
for(int i=0; i<n; i++),C99标准不允许在for内定义int i,C++中可以,C语言中不行...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行