没有realloc的动态字符串

时间:2018-01-11 00:20:44

标签: c string malloc

我有一个字符串malloced一个字节:

char * word = malloc(sizeof(char));

我有另一个字符串source.content。需要将此字符串的前几个字符复制到word并使用循环来完成工作:

for (int i = 0; isalnum(source.content[0]); ++i)
{
    word[i] = source.content[0];
    source.content += 1;
}

循环结束后,我终止word

word[strlen(token.value)-1] = '\0';

我的问题是,为什么上面的程序在复制超过1个字符到word时工作,即使它只为1个字符进行了malloced?当我在每个循环中实现一个额外的字节时,它只会慢一些。

0 个答案:

没有答案