【发布时间】:2017-04-27 21:44:48
【问题描述】:
我正在尝试复制 char16_t*,它已传递到函数中,但没有找到任何方法。
foo(char16_t* characters) {
char16_t* copiedCharacters;
//copy characters to copiedCharacters
}
我尝试使用strncopy(),但它只复制char*。
【问题讨论】:
我正在尝试复制 char16_t*,它已传递到函数中,但没有找到任何方法。
foo(char16_t* characters) {
char16_t* copiedCharacters;
//copy characters to copiedCharacters
}
我尝试使用strncopy(),但它只复制char*。
【问题讨论】:
有一个已知的构造(借自strcpy):
char16_t* str16cpy(char16_t* destination, const char16_t* source)
{
char16_t* temp = destination;
while((*temp++ = *source++) != 0)
;
return destination;
}
【讨论】:
char16_t *mystrcpy(char16_t *dest, const char16_t *src)
{
unsigned i;
for (i=0; src[i] != '\0'; ++i)
dest[i] = src[i];
dest[i] = '\0';
return dest;
}
【讨论】:
size_t。
size_t 是 some 无符号整数类型。它不是unsigned 的同义词。例如:size_t 可能比 unsigned 宽。 size_t 是用于数组索引和大小计算的最佳类型 - 既不太窄也不太宽。
size_t 不是数组索引和大小计算的最佳类型,因为溢出行为导致性能下降。 Bjarne Stroustrup 很遗憾size_t 没有签名。
size_t 的定义中不会发生这种情况。