关于Stack around the variable 'msg_id' was corrupted.
最近写了一个程序,出现了很多问题,其中有问题的一段代码单独拿出来测试,老是出现如下提示:
Run-Time Check Failure #2 - Stack around the variable 'msg_id' was corrupted.
具体代码如下:
int main()
{
char msg_buf[1024];
time_t ctime = time(NULL);
char username[] = "yang";
char hostname[56];
strcpy(hostname,username);
int choice = 32;
char *msg = "hello";
memset(msg_buf,0,sizeof(msg_buf));
char msg_id[5] = "",mode[4];
sprintf(msg_id,"%d",ctime);
sprintf(mode,"%d",choice);
sprintf(msg_buf,"1:%s:%s:%s:%s:%s",msg_id,username,hostname,mode,msg);
cout<<msg_buf<<endl;
return 0;
}
主要目的是想要打印出格式化的字符串,但是总是出现上面说的问题