Limbajul de programare C

C este un limbaj de programare standardizat, compilat, de nivel mediu. Este implementat pe majoritatea platformelor de calcul existente azi si este cel mai popular limbaj de programare pentru scrierea de software de sistem. Este apreciat pentru eficienta codului obiect pe care il poate genera si pentru portabilitatea sa.

 

C este un limbaj de programare relativ minimalist ce opereaza in stransa legatura cu hardware-ul, fiind cel mai apropiat de limbajul de asamblare fata de majoritatea celorlalte limbaje de programare ceea ce il face mai usor de invatat.

 

C este prezentat uneori ca “ asamblor portabil”, facandu-se astfel diferentele principale fata de limbajele de asamblare: codul unui program C poate fi compilat si rulat pe aproape orice tip de masina. Limbajul C apartine clasei limbajelor de nivel scazut sau de nivel mediu, aceasta indicand stransa legatura intre interoperabilitate si echipamentul hardware.

 

Urmatorul exemplu de  program a aparut in prima editie a cartii lui Brian Kenigram si Dennis Ritchie(“Limbajul de programare C”) si a devenit un exemplu standard de program introductiv in majoritatea cartilor de programare indiferent de limbajul de programare. Programul afiseaza “Hello, World!” la iesirea standard care este de obicei, un terminal sau monitor. Poate sa fie, totusi, si un fisier sau alt dispozitiv hardware, depinzand de maparea iesirii standard in momentul executiei programului.

#include <stdio.h>

main(){

printf(„Hello, World! \n”);

}

 

Programul prezentat mai sus va fi compilat corect de marea majoritate a compilatoarelor moderne. Totusi, va produce unele mesaje de avertizare daca va fi compilat de un compilator ce respecta standardul ANSI C. Mai mult, codul nu va fi compilat, returnand mesaje de eroare, daca se respecta standardul C99, deoarece variabila de intors, de tip int, nu va putea fi dedusa daca nu a fost specificata in codul sursa. Aceste mesaje pot fi eliminate aducand cateva schimbari minore programului initial:

#include <stdio.h>

int main(void){

printf(„Hello, World! \n”);

return 0;

}

 

GTK+, sau The Gimp Toolkit, este un sistem de dezvoltare a interfetelor grafice. Este unul dintre cele mai populare sisteme pentru X Window System, alaturi de Qt si Motif.

#include <stdlib.h>

#include <gtk/gtk.h>

static void helloWorld (GtkWidget *wid, GtkWidget *win)

{

GtkWidget *dialog = NULL;

dialog = gtk_message_dialog_new (GTK_WINDOW (win), GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, „Hello World!”);

gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER);

gtk_dialog_run (GTK_DIALOG (dialog));

gtk_widget_destroy (dialog);

}

int main (int argc, char *argv[])

{

GtkWidget *button = NULL;

GtkWidget *win = NULL;

GtkWidget *vbox = NULL;

/* Initialize GTK+ */

g_log_set_handler („Gtk”, G_LOG_LEVEL_WARNING, (GLogFunc) gtk_false, NULL);

gtk_init (&argc, &argv);

g_log_set_handler („Gtk”, G_LOG_LEVEL_WARNING, g_log_default_handler, NULL);

/* Create the main window */

win = gtk_window_new (GTK_WINDOW_TOPLEVEL);

gtk_container_set_border_width (GTK_CONTAINER (win), 8);

gtk_window_set_title (GTK_WINDOW (win), „Hello World”);

gtk_window_set_position (GTK_WINDOW (win), GTK_WIN_POS_CENTER);

gtk_widget_realize (win);

g_signal_connect (win, „destroy”, gtk_main_quit, NULL);

/* Create a vertical box with buttons */

vbox = gtk_vbox_new (TRUE, 6);

gtk_container_add (GTK_CONTAINER (win), vbox);

button = gtk_button_new_from_stock (GTK_STOCK_DIALOG_INFO);

g_signal_connect (G_OBJECT (button), „clicked”, G_CALLBACK (helloWorld), (gpointer) win);

gtk_box_pack_start (GTK_BOX (vbox), button, TRUE, TRUE, 0);

button = gtk_button_new_from_stock (GTK_STOCK_CLOSE);

g_signal_connect (button, „clicked”, gtk_main_quit, NULL);

gtk_box_pack_start (GTK_BOX (vbox), button, TRUE, TRUE, 0);

/* Enter the main loop */

gtk_widget_show_all (win);

gtk_main ();

return 0;

}

 

Cea mai simpla aplicatie utilizand C si GTK+:

#include <stdlib.h>

#include <gtk/gtk.h>

int main(int argc, char *argv[]){

GtkWidget *window;

gtk_init(&argc, &argv);

window=gtk_window_new(GTK_WINDOW_TOPLEVEL);

gtk_window_set_title(GTK_WINDOW(window),”Fereastra”);

g_signal_connect(window, „destroy”, G_CALLBACK(gtk_main_quit), NULL);

gtk_widget_show(window);

gtk_main();

return 0;

}

Acest articol este si pe:  //docs.google.com/document/d/1SoWIa0RyQNaG_IkKPRR1W3YRg5c0AjRM9rD4z3gX78k/edit

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *