主题:c++指针数组问题求教
初学C++ 看到了数组指针部分 看到一个事例 但是事例中为什么会显示4行没懂
指针难道还和行 还有几个地方没懂 在代码注释里 忘高手指教
#include "stdafx.h"
#include<iostream>
using namespace std;
#define V_LINES 4
#define H_LINES 7
int main(int argc, char* argv[ ])
{
char szEnglishCharacter[V_LINES][H_LINES] = { //定义二维数组,存储26个字母
{'A','B','C','D','E','F','G'},
{'H','I','J','K','L','M','N'},
{'O','P','Q',' ','R','S','T'},
{'U','V','W',' ','X','Y','Z'}
};
char *pszCharacter[V_LINES]={NULL}; //声明数组指针,为4个指向字符型的指针
for (int nLoop = 0 ; nLoop<V_LINES; nLoop++){
pszCharacter[nLoop] = ; szEnglishCharacter[nLoop] 、*/将4行字符的各行首地址分别赋给4个指针 (pszCharacter[nLoop] = ; szEnglishCharacter[nLoop] 数组是2维数组[H_LINES] 省略了是不是说会被认为是[] )*/
}
for(int nLoop_V = 0 ; nLoop_V<V_LINES; nLoop_V++){ //循环输出
for (int nLoop_H = 0; nLoop_H<H_LINES; nLoop_H++){
cout<<pszCharacter[nLoop_V][nLoop_H]<<" "; /*输出字符(这里输出但是显示结果为4行 为什么呢 而且定义的数组指针是1维啊 这里为什么pszCharacter[nLoop_V][nLoop_H] )*/
}
cout<<endl; //换行
};
return 0;
}
指针难道还和行 还有几个地方没懂 在代码注释里 忘高手指教
#include "stdafx.h"
#include<iostream>
using namespace std;
#define V_LINES 4
#define H_LINES 7
int main(int argc, char* argv[ ])
{
char szEnglishCharacter[V_LINES][H_LINES] = { //定义二维数组,存储26个字母
{'A','B','C','D','E','F','G'},
{'H','I','J','K','L','M','N'},
{'O','P','Q',' ','R','S','T'},
{'U','V','W',' ','X','Y','Z'}
};
char *pszCharacter[V_LINES]={NULL}; //声明数组指针,为4个指向字符型的指针
for (int nLoop = 0 ; nLoop<V_LINES; nLoop++){
pszCharacter[nLoop] = ; szEnglishCharacter[nLoop] 、*/将4行字符的各行首地址分别赋给4个指针 (pszCharacter[nLoop] = ; szEnglishCharacter[nLoop] 数组是2维数组[H_LINES] 省略了是不是说会被认为是[] )*/
}
for(int nLoop_V = 0 ; nLoop_V<V_LINES; nLoop_V++){ //循环输出
for (int nLoop_H = 0; nLoop_H<H_LINES; nLoop_H++){
cout<<pszCharacter[nLoop_V][nLoop_H]<<" "; /*输出字符(这里输出但是显示结果为4行 为什么呢 而且定义的数组指针是1维啊 这里为什么pszCharacter[nLoop_V][nLoop_H] )*/
}
cout<<endl; //换行
};
return 0;
}