指针数组+二级指针

指针数组就是一个数组,数组的每个元素是一个指针,指向一串字符的首地址
一篇可供参考的文章

#include<stdio.h>
int main(void)
{
	const char* language[] = { "BASIC", "FORTRAN", "PROLOG", "JAVA", "C++" };
	//指针数组也可以写出 *(language[ ])
	const char** q;(填空)
	int k;

	for (k = 0; k < 5; k++) {
		q =&language[k];(填空)
		//q指向指针数组每个元素的地址 指针数组每个元素是字符串的首地址
		printf("%s\n", *q);
		//*q才是指针数组的每个元素的首地址(*q是题目给的 所以用而已指针
	}

	return 0;
}




//第二种写法 不用二级指针的指针数组
#include<stdio.h>
int main(void)
{
	const char* language[] = { "BASIC", "FORTRAN", "PROLOG", "JAVA", "C++" };
	const char* q;
	int k;

	for (k = 0; k < 5; k++) {
		q =language[k]//这样写也可   q =*(language+k)
		printf("%s\n", q);
	}

	return 0;
}

posted on 2021-01-01 22:14  不依法度  阅读(50)  评论(0)    收藏  举报

导航