我是靠谱客的博主 阔达棉花糖,这篇文章主要介绍c语言函数修改数组,修改C中函数内的数组,现在分享给大家,希望可以做个参考。

// 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中函数内内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(103)

评论列表共有 0 条评论

立即
投稿
返回
顶部