C switch találós kérdés

Fórumok

Mi a hiba az alábbi kód végén lévő switch-ben?
Ha a C_TO_F helyére 0-t írok, akkor a hibaüzenet eltűnk. Miért nem megy a #define ?

callbacks.c: In function ‘compute_temp’:
callbacks.c:74: error: expected ‘:’ or ‘...’ before ‘;’ token
callbacks.c:74: error: expected expression before ‘:’ token
callbacks.c:78: error: expected ‘:’ or ‘...’ before ‘;’ token
callbacks.c:78: error: expected expression before ‘:’ token
make: *** [callbacks.o] Error 1


#ifdef HAVE_CONFIG_H
#  include <config.h>
#endif

#include <gnome.h>

#include "callbacks.h"
#include "interface.h"
#include "support.h"

#define C_TO_F 0;
#define F_TO_C 1;

void
on_quit1_activate                      (GtkMenuItem     *menuitem,
                                        gpointer         user_data)
{
	gtk_main_quit();
}


void
on_properties1_activate                (GtkMenuItem     *menuitem,
                                        gpointer         user_data)
{

}


void
on_preferences1_activate               (GtkMenuItem     *menuitem,
                                        gpointer         user_data)
{

}


void
on_about1_activate                     (GtkMenuItem     *menuitem,
                                        gpointer         user_data)
{

	GtkWidget *about;
	about = create_gtemp_about();
	gtkwidget_show(about);
}


void
on_quit_button_clicked                 (GtkToolButton   *toolbutton,
                                        gpointer         user_data)
{
	gtk_main_quit();
}


void
on_fahr_entry_activate                 (GtkEntry        *entry,
                                        gpointer         user_data)
{
	gchar * fahr = NULL;
	
}

void
compute_temp							(GtkWidget *this_widget,
										 float temp,
										 int type) 
{
	GtkWidget *other_widget = NULL;
	float result = 0.0;
	gchar *result_string = NULL;
	switch (type) {
		case C_TO_F: // ez a rossz sor<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
			//result = ((9.0/5.0) * temp) + 32.0;
			//other_widget = lookup_widget(this_widget, "fahr_entry");
			break;
		case F_TO_C:
			result = (5.0/9.0)*(temp-32.0);
			other_widget = lookup_widget(this_widget, "cel_entry");
			break;
	}
	result_string = g_strdup_printf("%5.2f", result);
	gtk_entry_set_text(GTK_ENTRY(other_widget), result_string);
	gtk_free(result_string);
}

Hozzászólások

Pontosvesszo.

#define C_TO_F 0; <- EZ.

---
pontscho / fresh!mindworkz

Húúúúúúúúúú de nagy marha vagyok
#define C_TO_F 0;

tehát a C_TO_F értéke 0;

csak lendületből odaraktam a ; -t. Sokat javaztam mostanába :)