str[i]+j 表示什么意思呢
假如你的str是一个二维字符串数组,那么str[i]其实相当于存放你第i+1个字符串地址的一个指针!所以 str[i]+j 代表的是str[i]这个指针变量向后移动了j,也是指向了一个字符串。具体是指向哪里,要看你的j的值,要是超出了你的数组范围那么就是指向未知的字符串了。
假如你的str是一个一维字符串数组那么,str[i]+j代表str这个字符串的第i+1个字符的ASC码值和j的和组成的一个新字符。比如你的str是一个字符‘A’, j = 32,那么str[i]+j就等于‘A’的ASC码值 +32 = 97 ,而 ‘a’的ASC码值就等于97,那么str+j 就是新的字符 ‘a’;
而str[i+j]代表什么勒?
假如你的str是一个二维字符串数组,那么str[i+j]代表的也是一个指向一个字符串的指针,假如没有超出数组范围,那么这个指针就指向你的第i+j+1个字符串!(前提是不超出你的数组范围)
假如你的str是一个一维字符串数组,那么str[i+j]代表的是你的字符串数组str的第i+j+1个字符元素(前提是不超出你的数组范围)
所以!str[i]+j 和str[i+j]完全不是一个意思!不管你的数组是一维还是二维! |