1.这里的+是代表什么意思(我刚入门),2.+除了正常的运算、++外,还有什么用途。麻烦帮忙解答一下
以%s格式输出的时候,你需要给它起始地址。
这里得说数组名的概念,数组名是数组首元素的地址(存在两种例外),地址加减,其实就是指针的加减,指针加减整数又与指针的类型有关,因为这里是char类型,所以的话,每次加一跳过一个字节。
"12345678"这个是常量字符串,在printf里相当于给你的是1的地址,你在后面加减整数的话,也是得根据类型。
为什么是1的地址呢,
你可以这样去验证:char* a="12345678",以%p的格式打印a,在去监视里看下,是不是1的地址。
知道了上面这些,那问题就很简单了
b+8,b是首元素的地址,地址的类型是char*,那每次加1,跳过1个字节。那这里+8就跳过8个字节。
下面一个是常量字符串相当于是1的地址,那加4,就向后偏移4个字节
更详细的你可以看一下我的博客中的,盘复数组和指针的那些知识