2012-06-19 51 views
1

我想創建一個GTK + 3.0(使用C,在Linux中)文本框,可以從雙精度讀取,其中這個double將插入一個公式,然後返回不同的盒子。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

得到它的工作,感謝的人 –