2012-06-19 2 views
1

Я пытаюсь создать текстовое поле в GTK + 3.0 (с использованием C, в Linux), которое может быть считано как двойное, где этот двойной будет подключен к уравнению, а затем возвращен в другой коробка.Запись в текстовом поле GTK

Итак, мой вопрос: что является лучшим способом создания текстового поля, которое можно ввести, а затем, как я прочитаю его как двойной?

В настоящее время я пытаюсь использовать gtk_entry_new() для инициализации и - после нескольких промежуточных шагов - *gtk_entry_get_text для чтения.

Мое чтение линия в настоящее время выглядит следующим образом:

double y = (double)*gtk_entry_get_text(GTK_ENTRY(input_y)); 

я получаю у как указатель, а *gtk_entry_get_text(...) имеет формат сопзЬ gchar *

Я считаю, что лучший способ заключается в преобразовании const gchar* в double, но как?

ответ

1

$ люди atof

NAME 
    atof - convert a string to a double 

SYNOPSIS 
    #include <stdlib.h> 

    double atof(const char *nptr); 

DESCRIPTION 
    The atof() function converts the initial portion of the string 
    pointed to by nptr to double. The behavior is the same as 

     strtod(nptr, (char **) NULL); 

    except that atof() does not detect errors. 

RETURN VALUE 
    The converted value. 

таким образом:

double y = atof(gtk_entry_get_text(GTK_ENTRY(input_y))); 
+0

получил это работает, спасибо людей –

Смежные вопросы