将char转换为gchar

时间:2011-11-30 04:38:50

标签: c gtk char

所以,继续这笔交易,我正在使用GTK。

我要求set_entry_text上的姓名。因此,用户输入他的名字,我将该变量保存为char。

char *jugador1, *jugador2 ///they're in a structure

void obten_nombre (GtkWidget *widget, gpointer info)
{
  WIDGETS *elementos = (WIDGETS *)info;
  gchar *j1, *j2;

   j1=malloc(50 *sizeof(gchar));
  j2=malloc(50 *sizeof(gchar));
  strcpy(j1,gtk_entry_get_text(GTK_ENTRY( elementos->entry_j1)));
  strcpy(j2,gtk_entry_get_text(GTK_ENTRY( elementos->entry_j2)));
  strcpy(elementos->jugador1, j1);
  elementos->jj1=j1;
  // strcpy(elementos->jugador2, j2);
  g_print("Jugador1: %s\n", elementos->jugador1);
   gtk_widget_hide_all(elementos->ventana_popup2);
   gtk_widget_show_all(elementos->ventana_principe);
}

我正在elementos->jugador1 char变量。

我正在演员:

gchar auxjugador1;

我该如何制作

auxjugador1 = elementos->jugador1

所以我可以做一个

gtk_entry_set_text(GTK_ENTRY(elementos->nombre_jugador1),auxjugador1);

谢谢你们!

1 个答案:

答案 0 :(得分:0)

jugador1不是char变量。它是char *(指针)。

您无法将指针放入gchar

您可以创建另一个指针,并将其指向现有数据,或者声明一个足够大的数组来保存副本,然后使用strcpy