尝试编译代码时出现此错误。
错误:分配给' char'来自不兼容的类型' const char *'
参考中的函数是
void stringCopy(char *destination, const char *source) {
while(source != '\0') {
destination = source;
destination++, source++;
}
}
我知道在C ++中有一个内置的strcpy()
但是对于我正在做的事情,要求我们从头开始制作一个。
答案 0 :(得分:2)
变量source
是字符的指针。
标识符'\0'
是字符。
在while
表达式中,您正在比较指向字符的指针。
您可以通过取消引用指针来获取角色:
while (*source != '\0')
在复制语句中,您正在复制指针,而不是字符。
查看您最喜欢的关于指针的C ++参考。