我有一个带有三个参数的函数:一个指向字符数组的指针(也称为C-String),以及两个指向特定字符的指针(我们假设它们指向C-String中的字符)。 / p>
void stringPointerOperation(char* str, char* firstPtr, char* secondPtr)
{
cout << str << endl;
cout << "First character=" << *firstPtr << endl;
cout << "Second character =" << *secondPtr << endl;
}
问题:
答案 0 :(得分:2)
回答问题1:
如果char
的数组格式正确,则应该以空值终止(即最后一个字符应为\0
)。只需打印字符,直到达到目的为止:
while(*firstPtr != '\0') {
cout << *firstPtr << endl;
*firstPtr++;
}
回答问题2:
如果你确定它们是指向同一个字符数组的指针,那么简单地减去它们应该起作用:
int charsBetween = secondPtr - firstPtr;