我在Character数组中存储了“Hello”世界,并将characteres分配给了char指针,
char a[100],*p;
p=a;
我使用指针找到了字符串的长度,那么我应该如何找到字符串的位置。 程序
char a[100],*p;
int lenth;
printf("Enter the string:");
gets(a);
p=a;
while(*p)
{
length++;
p++
}
printf("Length=%d",length);
答案 0 :(得分:1)
我认为如果你想获得字符串的长度,你只需要使用strlen(a)来获得长度。
但如果你想模仿strlen你可以写这样的东西
size_t length = 0;
for (char* p = a; p < a + sizeof(a) && *p; ++p, ++length );
答案 1 :(得分:0)
进行搜索,p存储结果地址,所以p-a是索引。
char target = 'e';
for (p = a; *p && *p != target; ++p) {};
int result = p - a;
// if target doesn't exists result === Length