QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 924|回复: 1

有一个小问题,麻烦各位看看

[复制链接]
发表于 2006-5-25 23:41:35 | 显示全部楼层 |阅读模式
我写了一个动态的往gtkclist控件中加入数据的函数如下:
[code:1]
void add_event_to_clist(int number)
{
  int i;
  gchar *alert[11];
  char current_time[32];
  char current_day[32];
  for (i = 0; i <11; i++)
    alert[i] = (gchar *) g_malloc (sizeof (gchar) * 64);        
  get_current_time(current_time,current_day);//获得当前时间的函数
  sprintf (alert[0], "%s", current_time);
  sprintf (alert[1], "%s", event_name[number]);//event_name是全局变量,下面的也是
  sprintf (alert[2], "%s", sourcemac);
  sprintf (alert[3], "%s", destinationmac);
  sprintf (alert[4], "%s", ip_header_string_object.source_ip);
  sprintf (alert[5], "%s", ip_header_string_object.destination_ip);
  sprintf (alert[6], "%s", event_protocol[number]);
  sprintf (alert[7], "%s", event_code[number]);
  sprintf (alert[8], "%s", event_defination[number]);
  sprintf (alert[9], "%s", event_information[number]);
  sprintf (alert[10], "%s", alert_type[number]);
  while (gtk_events_pending ())        
    gtk_main_iteration ();
  gtk_clist_append (GTK_CLIST (clist_event), alert);
  for (i = 0; i <11; i++)
      g_free(alert[i]);
  return;
}
[/code:1]
这个函数开始运行时是没有错误的,运行良好,但运行一段比较长的时间后,有可能会出现段错误,好象是
out of memory造成的,我在这个函数中每次都把分配的空间给释放了啊,是不是函数写的有问题啊
麻烦大家帮帮我
发表于 2006-5-26 10:02:30 | 显示全部楼层
看看内存使用状况
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-2 14:21 , Processed in 0.047870 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表