p=strchr(s,'s')-s; C语言中这句什么意思。。。。 哪位大侠教下啊。。。。 最好举个例子。。谢了啊。。。
展开全部
p=strchr(s,'s')-s表示计算字符s在字符串s中的位置,p应该是个int值
例如:
char s[] = "abcdefopqrst";
int p=strchr(s,'s')-s;
p会等于10,因为字符s在字符串s中的位置是10
补充:-s:s代表的是字符串s的起始位置,所以-s就相当于当前查找出来的字符's'的位置和字符串s的起始位置的差值
RKILLYOU兄弟:
你说的:‘s’的位置是11,这句话有个前提是s的起始位置是1,而数组的起始位置都是从0开始的,所以我认为我说的应该是正确的。当然在本题来说,strchr(s,'s')-s得到的是相对位置,所以等于10是毫无疑问的
例如:
char s[] = "abcdefopqrst";
int p=strchr(s,'s')-s;
p会等于10,因为字符s在字符串s中的位置是10
补充:-s:s代表的是字符串s的起始位置,所以-s就相当于当前查找出来的字符's'的位置和字符串s的起始位置的差值
RKILLYOU兄弟:
你说的:‘s’的位置是11,这句话有个前提是s的起始位置是1,而数组的起始位置都是从0开始的,所以我认为我说的应该是正确的。当然在本题来说,strchr(s,'s')-s得到的是相对位置,所以等于10是毫无疑问的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询