Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Abbiamo provato per diversi giorni una new entry del mercato italiano, la Gowow Ori, una moto elettrica da off-road, omologata anche per la strada, che sfrutta una pendrive USB per cambiare radicalmente le sue prestazioni
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design
OnePlus 15 nasce per alzare l'asticella delle prestazioni e del gaming mobile. Ma non solo, visto che integra un display LTPO 1,5K a 165 Hz, OxygenOS 16 con funzioni AI integrate e un comparto foto con tre moduli da 50 MP al posteriore. La batteria da 7.300 mAh con SUPERVOOC 120 W e AIRVOOC 50 W è la ciliegina sulla torta per uno smartphone che promette di offrire un'esperienza d'uso senza alcun compromesso
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media
Vediamo come si comporta il Ryzen 5 7500X3D, nuovo processore di casa AMD che fonde 6 core Zen 4 con la tecnologia 3D V-Cache, particolarmente utile in scenari come il gaming. Annunciato a un prezzo di listino di 279€, il nuovo arrivato sarà in grado di diventare un riferimento per i sistemi budget? Ecco cosa ne pensiamo.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 28-02-2009, 17:58   #1
Damage92
Senior Member
 
L'Avatar di Damage92
 
Iscritto dal: Sep 2008
Città: Roma
Messaggi: 1382
[C++][GTK] Cast tra gint e int

Salve!
Sto cercando di imparare a programmare in c e ad usare le gtk.
Nel programma prendo un numero da una casella di testo, memorizzandolo dentro un puntatore di tipo gint (ma funziona anche gchar).
Se stampo il valore direttamente funziona tutto, se invece lo riverso dentro una variabile di tipo int, cosa che dovrei fare per utilizzare il numero nel mio programma, mi restituisce dei valori random assurdi...

Grazie a chiunque mi aiuterà!

Ultima modifica di Damage92 : 01-03-2009 alle 20:50.
Damage92 è offline   Rispondi citando il messaggio o parte di esso
Old 01-03-2009, 20:51   #2
Damage92
Senior Member
 
L'Avatar di Damage92
 
Iscritto dal: Sep 2008
Città: Roma
Messaggi: 1382
up?
Damage92 è offline   Rispondi citando il messaggio o parte di esso
Old 01-03-2009, 22:45   #3
DanieleC88
Senior Member
 
L'Avatar di DanieleC88
 
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
Valori random? Di che tipo? Si può vedere un esempio di codice?
__________________

C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai!
DanieleC88 è offline   Rispondi citando il messaggio o parte di esso
Old 02-03-2009, 15:06   #4
-Slash
Senior Member
 
L'Avatar di -Slash
 
Iscritto dal: Mar 2006
Messaggi: 2516
Non so come funzionino le gtk, ma in genere non è necessario fare il cast in questi casi... In genere si utilizzano delle funzioni per esempio per paragonare due gint, senza che tu li debba assegnare a un int. Cioè in pratica tutte le operazioni che il tuo algoritmo dovrebbe eseguire su int, le fai eseguire sui gint, utilizzano le opportune funzioni messe a disposizione dalle gtk...
-Slash è offline   Rispondi citando il messaggio o parte di esso
Old 02-03-2009, 16:06   #5
Damage92
Senior Member
 
L'Avatar di Damage92
 
Iscritto dal: Sep 2008
Città: Roma
Messaggi: 1382
Questo è un esempio di programma (main() contiene solo il codice di gtk).
Il warning che da è: warning: assignment discards qualifiers from pointer target type, ma non capisco cosa significa
Comunque usare solo i tipi delle gtk è una soluzione, però essendo il primo programma che scrivo volevo stare ancora sul facile...

Codice:
//questo lo compilo con: gcc -Wall -g prova.c `pkg-config --cflags --libs gtk+-2.0`

#include <gtk/gtk.h>

//funzione che prende il testo (ma a cosa serve il primo parametro? senza non funziona...)
void prendi_testo(GtkWidget *widget, GtkWidget *entry){

gchar *testo;
int numero;

testo=gtk_entry_get_text(GTK_ENTRY(entry)); //entry è il widget gtk
g_print("\ntesto: %s", testo); //qui stampa il testo correttamente
numero=(int)*testo; //warning: assignment discards qualifiers from pointer target type (??? O.o)
g_print("\nnumero: %d\n", numero); //qui stampa il valore errato (1=49, 2=50...10=49, 11=49, 20=50...)

}

//qui il codice delle gtk per creare la grafica
int main(int argc,char *argv[]){
gtk_init(&argc, &argv);

GtkWidget *entry;
entry=gtk_entry_new();
GtkWidget *window;
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
GtkWidget *button;
button=gtk_button_new_with_label("prendi_testo");
GtkWidget *hbox;
hbox=gtk_hbox_new(FALSE,0);
gtk_box_pack_start(GTK_BOX(hbox),entry,TRUE,FALSE,2);
gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,FALSE,2);

gtk_signal_connect (GTK_OBJECT (button), "clicked",
                        GTK_SIGNAL_FUNC (prendi_testo), (gpointer) entry);

gtk_container_add(GTK_CONTAINER(window),hbox);
gtk_widget_show_all(window);
gtk_main();

return 0;
}
Damage92 è offline   Rispondi citando il messaggio o parte di esso
Old 02-03-2009, 17:29   #6
DanieleC88
Senior Member
 
L'Avatar di DanieleC88
 
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
Non puoi convertire un testo ("123") in un numero (123) direttamente mi sa, al momento non posso fare molte prove quindi non so dirti di preciso. Probabilmente gchar è un tipo non segnato, mentre int è un tipo segnato, e quando lo converti succedono casini.
__________________

C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai!
DanieleC88 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo Test ride con Gowow Ori: elettrico e off-road va...
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design   Recensione OnePlus 15: potenza da vendere e batt...
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media AMD Ryzen 5 7500X3D: la nuova CPU da gaming con ...
SONY BRAVIA 8 II e BRAVIA Theatre System 6: il cinema a casa in formato compatto SONY BRAVIA 8 II e BRAVIA Theatre System 6: il c...
KTC H27E6 a 300Hz e 1ms: come i rivali ma a metà prezzo KTC H27E6 a 300Hz e 1ms: come i rivali ma a met&...
Osservatorio AGCOM: sempre più ac...
Sempre più IA su Spotify: arrivan...
iMac M4 crolla a 1.199€ con risparmio di...
Nintendo Switch 2: in rilascio un nuovo ...
Core Ultra 9 290K Plus, Core Ultra 7 270...
Prezzo Black Friday per le super cuffie ...
Crollano i prezzi della cuffie Beats col...
ASUS ROG Matrix RTX 5090 costa 4000 doll...
Grazie ai dati di ESA il calcolo della t...
Rilasciati nuovi video e immagini della ...
Gli astronauti cinesi di Shenzhou-20 son...
Mai così tanti gas serra: il 2025...
Google condannata in Germania: favorito ...
Ubisoft rimanda i risultati finanziari e...
ADATA porta i primi moduli DDR5 CUDIMM 4...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:08.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v