MFC读取txt数据到二维数组
这段代码是下面对话框的处理
示例编辑框定义的r,当我打开一个6行3列的数据时 把里面的r全部改成6 输出是正确的 但是当我输入r并在对话框那里的示例编辑框输入6 并实现下面的显示问题时 提示读取位置发生访问冲突,哪个大神能解释一下 新手刚入门 不懂为什么?
在C/C 语言中(这个是标准,与MFC本身无关),二维数组与二维指针是不能完全通用的
如float **p;与float a[10][10]无法完全等价(这个与一维数组不同)
对p[i][j]它无法定位到a[i][j],因为它没有一行数据的宽度
所以一般要么你用二维数组,要么用一维指针指向二维数组
通过 i*列数 j定位到a[i][j]
如以下的
int a[5][10]={0};
int *p;
a[2][3]=1234;
p=(int *)a;
那么
p[2*10 3] 就表示 a[2][3],它的值就是1234
若你对vector/map等C 本身的动态容器不熟悉,对二维数组,个人建议你用静态的数组,也就是不用指针(特别是能确定列数的)。
若一定要用动态的,就如我上面的,用一维指针代替它就可以了。
答: 楼主你好呀,我是一名心理学专业的学生。以我自己的经验来给你一些建议吧。希望对你有所帮助。 心理学的类别很广,按照我们国家的学科分类,心理学大概分为基础心理...详情>>
答:读指针用来记录文件当前文件之前的读取位置,它指向下一个将要读取的信息项详情>>
答:c++ 是程序语言 不是系统 谢谢详情>>