※ 引述《art1 (人,原来不是人)》之铭言:
: ※ 引述《loveflames (咕啾咕啾魔法阵)》之铭言:
: : char * state="zsxdcvg";
: : ...
: : playAudio(&audio[strchr(state,s1[i])-state]);
: strchr(state,s1[i])-state 的结果是个数字
: 可是实在无法理解为什么字串可以这样直接相减
: google “字串相减”或是“字串 减 字串” 都找不到想要的说明
: 还是说这种技巧硬记就好?不需要去理解?
首先指标宣告
char *a;
char b[]="1234";
在内存中
0x100 0x101 0x102 0x103
1 2 3 4
a = b; 则 a = 0x100 , 这个变量的值为 0x100
当要存取内存上的资料时 *a = '1', *(a+1) = '2' ... etc
^
|