概述
// test.txt
50
13
124
–
void hi ( int *b, FILE *pfile ) {
rewind ( pfile );
int i;
for( i = 0 ; i < 3 ; i++ ) {
fscanf ( pfile, "%d", &b[i] );
}
}
int main ( void ) {
FILE *fp = fopen ( "test.txt", "r" );
int a[10]; //putting extra size for test.
hi ( &a[0], fp );
printf("%d,%d,%dn", a[0], a[1], a[2]);
fclose ( fp );
return 0;
}
我正在尝试理解涉及阵列的指针.当我测试上面的代码时,我注意到通过将hi(& a [0],fp)等不同的索引值设置为hi(& a [1],fp),我得到了不同的结果.
// [hi(& a [0],fp)] // [hi(& a [1],fp)]的结果
50,13,124垃圾#,50,13.
我对结果感到很困惑,因为在’hi’函数中我从i = 0指定数组的开始,这意味着它存储从[0]开始的值.但似乎将1而不是0放在一边是以某种方式将值放在一边.为什么会这样?
最后
以上就是阔达棉花糖为你收集整理的c语言函数修改数组,修改C中函数内的数组的全部内容,希望文章能够帮你解决c语言函数修改数组,修改C中函数内的数组所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复