c语言中,ss在开始定义时不是定义了(*ss)[M],是个一维数组,怎么后来又变成ss[i][k],二维数组了?
答案:1 悬赏:50 手机版
解决时间 2021-03-27 12:23
- 提问者网友:自食苦果
- 2021-03-26 18:26
c语言中,ss在开始定义时不是定义了(*ss)[M],是个一维数组,怎么后来又变成ss[i][k],二维数组了?
最佳答案
- 五星知识达人网友:胯下狙击手
- 2021-03-26 18:52
char (*ss)[M],定义的这个ss指针,是一个指向一维字符数组的指针
*ss 或 ss[0] 取的第0个字符数组
*(ss+1) 或 ss[1] 取的是第1个字符数组(第0个数组后偏移M个字节)
ss[i]因为是个字符数组,那 ss[i][k]就是这个数组中的元素,即字符了
fun函数,是在每个字符数组的,第k个位置上写个0,这样长度小于k的字符串没啥影响,长度大于k的字符串,就在k的位置上被截断了
*ss 或 ss[0] 取的第0个字符数组
*(ss+1) 或 ss[1] 取的是第1个字符数组(第0个数组后偏移M个字节)
ss[i]因为是个字符数组,那 ss[i][k]就是这个数组中的元素,即字符了
fun函数,是在每个字符数组的,第k个位置上写个0,这样长度小于k的字符串没啥影响,长度大于k的字符串,就在k的位置上被截断了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯