C语言 字符二维数组(多个字符串)探讨 求解
什么是二维字符数组?
二维字符数组中为什么定义字符串是一行一个?
“hello world”在C语言中代表什么?
为什么只能在定义时才能写成char a[10]="jvssj";
在函数体里就不可以这样赋值了,只能调用<string.h>库里的函数 strcpy(a,"jvssj"),究竟是为什么?
为什么定义 char *p="dvsbfbvs"是错的,而char a[]="dsfvbhjb",却是对的;?
为什么我学指针总是分不清地址?
指针如何与字符串一起使用?
指针与字符串的关系?
真相只有一个--------------(来自笔者的猜测,若猜测是错的,请大家尽情在评论区批斗我的言论)
首先什么是二维数组----------很简单?只是一个有行有列的结构吗?
当然不是------你应该分清二维数组首地址,二维数组首行地址,二维数组首元素地址的区别(当然包括行地址,某行某元素地址)。。。。。。。
如果觉得不太明白请回归一维数组》》你能分清一维数组首地址,一维数组首元素地址吗?当然他们不一样只不过他们的值都是第一个元素的值而已,但是他们的地址真的不同啊!当你学指针为什么会搞不懂那么多的指针(注意!!!-----指针就是地址,因为你没有分清他们属于什么样的地址。