📄 subject_46394.htm
字号:
<p>
序号:46394 发表者:黄本 发表日期:2003-07-09 17:27:29
<br>主题:二维指针与二维数组问题
<br>内容:<BR>小的 我本来想确定个行列不定的二维数组于是就:<BR>int **ac;<BR>由于程序需要 先将已存在数组a[3][3]={{0,1,2},{3,4,5},{6,7,8}};<BR>赋值于 ac;(由于以后设想ac再被其他行列不同于a[3][3] 的二维数组赋值,想达成ac为行列不定的数组,所以 int **ac;)<BR>但是用了 ac=a;后程序说赋值出错。<BR>自己也觉得这句语句也不太对,所以改了一下, <BR>for(i=0;i<N;i++)<BR> *(ac+i)=a[i];<BR>为什么检验时,说ac为一个未定义的变量????<BR><BR>把数组a[3][3] 赋予 **ac中,到底该怎么做???(有办法做吗?因为看书上似乎没有这样的例题,所以原来的思路产生怀疑!)<BR> <BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:tiger_bai 回复日期:2003-07-09 17:56:17
<br>内容:朋友 你先定义int *ac 然后再扩展。起不方便。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:counter-bug 回复日期:2003-07-09 18:20:50
<br>内容:建议动态分配数组<BR>先 int * pnArray = new int[9] ;<BR>赋值<BR>再 acc = &pnArray ;
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:VChen 回复日期:2003-07-09 19:15:37
<br>内容:void CAaaDlg::OnButton1() <BR>{<BR> // TODO: Add your control notification handler code here<BR> int a[3][3] = { {0, 1, 2}, {3, 4, 5},{6, 7, 8} };<BR><BR> // 分配内存<BR> int **ac = new int*[3];<BR> for( int i=0; i<3; i++ )<BR> ac[i] = new int[3];<BR><BR> char aa[3];<BR> for( i=0; i<3; i++ )<BR> {<BR> for( int j=0; j<3; j++ )<BR> {<BR> ac[i][j] = a[i][j];<BR> // 显示二维指针的值<BR> MessageBox( itoa(ac[i][j], aa, 10) );<BR> }<BR> }<BR><BR> // 释放内存 <BR> for( i=0; i<3; i++ )<BR> delete ac[i];<BR> delete ac;<BR>}
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -