重新记忆
这是你在节目播出很多次你想重新回忆. 这样做的realloc的功能.realloc的功能需要两参数,基地内存地址你想要瘦身、及金额并预留空间,你想回到一个指针向基地报告.
假如我们已预留空间,并指所谓味精要重新向太空空间已经占有量、另外加上长串的话,我们可以利用以下.
msg = (char *)realloc(msg, (strlen(msg) + strlen(buffer) + 1)*sizeof(char));
下列程序说明了使用malloc、realloc和自由.用户进入一系列有串一起.节目站阅读弦乐弦乐是进入一个空当.
#include <string.h>
#include <malloc.h>
int main()
{
char buffer[80], *msg;
int firstTime=0;
do
{
printf("\nEnter a sentence: ");
gets(buffer);
if (!firstTime)
{
msg = (char *)malloc((strlen(buffer) + 1) *
sizeof(char));
strcpy(msg, buffer);
firstTime = 1;
}
else
{
msg = (char *)realloc(msg, (strlen(msg) +
strlen(buffer) + 1) * sizeof(char));
strcat(msg, buffer);
}
puts(msg);
} while(strcmp(buffer, ""));
free(msg);
return 0;
}
该计划将产量如下:
Enter a sentence: Once upon a time
Once upon a time
Enter a sentence: there was a king
Once upon a timethere was a king
Enter a sentence: the king was
Once upon a timethere was a kingthe king was
Enter a sentence:
Once upon a timethere was a kingthe king was |
|