Bonjour :)
Pour les besoins d'un projet, j'ai eu envie de bidouiller vfscanf pour l'adapter à mes besoins. J'ai quasi fini mon bidouillage mais j'ai quatre questions :
* de base mon snscanf ne travaille que sur des buffers, y aurait-il un moyen portable d'encapsuler des buffers dans des FILE * (en dehors de l'extension GNU fmemopen() pas portable du tout) pour que je puisse le généraliser aux fichiers ?
* J'ai ajouté la lecture de données binaires, mais je (…)
Forum Programmation.c ncurses et unicode
Bonjour à tous.
je suis un train de développer une application en C sous ncurses (eh oui, on peut très bien vivre sans environnement graphique 'lol'). Cette application doit tourner dans plusieurs pays je compte donc utiliser unicode.
Mais je tombe sur un petit problème: les noms symboliques des touches spéciales sous ncurses (KEY_DOWN, KEY_UP, KEY_F(n), etc.) sont affecté aux nombres allant de 0x100 à 0x1FF. Pour unicode, cela tombe dans Latin Extended-A et une partie de Latin Extended-B (c'est (…)
je suis un train de développer une application en C sous ncurses (eh oui, on peut très bien vivre sans environnement graphique 'lol'). Cette application doit tourner dans plusieurs pays je compte donc utiliser unicode.
Mais je tombe sur un petit problème: les noms symboliques des touches spéciales sous ncurses (KEY_DOWN, KEY_UP, KEY_F(n), etc.) sont affecté aux nombres allant de 0x100 à 0x1FF. Pour unicode, cela tombe dans Latin Extended-A et une partie de Latin Extended-B (c'est (…)
Forum Programmation.c séparation de source
Je commence à séparer mes sources et je ne sais pas trop ce qu'il en est au niveau des macros. je m'explique:
(un exemple c'est tjrs mieu)
ça je sais que ça marche, mais ensuite:
ce que je voudrait savoir c'est si je met une macro par exemple
est-ce qu'elle doit être dans le fichier fonction.c, dans le .h ou dans les deux?
(un exemple c'est tjrs mieu)
/*fonction.c*/
int somme(int a,intb)
{
return (a+b);
}
/*fonction.h*/
int somme(int a, int b);
ça je sais que ça marche, mais ensuite:
ce que je voudrait savoir c'est si je met une macro par exemple
#define MULTI(x,y) ((x)*(y))
est-ce qu'elle doit être dans le fichier fonction.c, dans le .h ou dans les deux?
Forum Programmation.c HI,
Bonjour,
je ne sais pas comment installer la bibliotheque "glut" pour la programmation en C (openGL)
je ss un debutant en linux alors j'aimerais bien avoir une reponse bien detaille(pas par pas) SVP.
Merci...
je ne sais pas comment installer la bibliotheque "glut" pour la programmation en C (openGL)
je ss un debutant en linux alors j'aimerais bien avoir une reponse bien detaille(pas par pas) SVP.
Merci...
Forum Programmation.c fonction à nombre variable de paramètre
Bon j'ai commencé à m'attaquer au fonctions à nbr variables de paramètre, j'utilise pour cela la lib <stdarg.h>
ça marche bien. Mais je cherche à faire un peu plus compliqué...
j'ai une première fonction:
et je voudrai l'utiliser dans une fonction moyenne par exemple, mais je ne (…)
ça marche bien. Mais je cherche à faire un peu plus compliqué...
j'ai une première fonction:
int somme(int nbr, ...)
{
int i,s=0;
va_list(pt);
va_start(pt,nbr);
for(i=0 ; i < nbr ; i++) /* "<" = infèrieur, mais je n'arrive pas à le faire passer*/
s=s+va_arg(pt,int);
va_end(pt);
return s;
}
et je voudrai l'utiliser dans une fonction moyenne par exemple, mais je ne (…)
Forum Programmation.c pb de configuration de clavier
Bonjour,
J'effectue le portage d'une application de unixware SCO vers linux redhat : Red Hat Enterprise Linux ES release 3 (Taroon Update 4)
Kernel 2.4.21-27.EL on an i686
Mon problème est d'obtenir,pour la touche "Entrée", le code 13.
On se connecte à l'application à l'aide d'un émulateur de terminal configuré en VT220.
Si je lance la commande showkey -a j'obtiens bien un code 13 :
^M 13 0015 0x0d
par contre quand l'application lit le clavier à l'aide de read(stdin..., (…)
J'effectue le portage d'une application de unixware SCO vers linux redhat : Red Hat Enterprise Linux ES release 3 (Taroon Update 4)
Kernel 2.4.21-27.EL on an i686
Mon problème est d'obtenir,pour la touche "Entrée", le code 13.
On se connecte à l'application à l'aide d'un émulateur de terminal configuré en VT220.
Si je lance la commande showkey -a j'obtiens bien un code 13 :
^M 13 0015 0x0d
par contre quand l'application lit le clavier à l'aide de read(stdin..., (…)
Forum Programmation.c Problème avec -lGLU
Sur ma Mandriva, j'essaye de compiler le compo 4k 2004 (des démos tenant dans 4ko de code).
Bien évidemment, ça nécessite la librairie GLU.
Je l'installe (paquet libMesaGLU1-devel) et retente la compilation.
Invariablement j'ai :
#gcc -I /usr/include/SDL -I /usr/X11R6/include/GL/ -I ../../../include -lSDL -lGL -lGLU -lm -W -lpthread -O shadowsun.c -o shadowsun
shadowsun.c: In function 'main':
shadowsun.c:169: warning: incompatible implicit declaration of built-in function 'strlen'
/usr/bin/ld: cannot find -lGLU
collect2: ld returned 1 exit status
A chaque fois, depuis des (…)
Bien évidemment, ça nécessite la librairie GLU.
Je l'installe (paquet libMesaGLU1-devel) et retente la compilation.
Invariablement j'ai :
#gcc -I /usr/include/SDL -I /usr/X11R6/include/GL/ -I ../../../include -lSDL -lGL -lGLU -lm -W -lpthread -O shadowsun.c -o shadowsun
shadowsun.c: In function 'main':
shadowsun.c:169: warning: incompatible implicit declaration of built-in function 'strlen'
/usr/bin/ld: cannot find -lGLU
collect2: ld returned 1 exit status
A chaque fois, depuis des (…)
Forum Programmation.c GTK : Forker depuis la boucle principale
Bonsoir,
Voila, je réalise en ce moment une application en langage C qui s'appuie (notamment) sur GTK. Cependant, l'usage de l'interface graphique n'est pas systématique.
D'autre part, et c'est l'objet de mon post, je voudrais que cette application puisse forker et dæmoniser sur demande de l'utilisateur, c'est-à-dire sur un clic de l'utilisateur.
J'aimerais donc savoir s'il est possible de forker sans danger depuis une fonction de call back(pas faisable à mon avis) où s'il faut forcément (…)
Voila, je réalise en ce moment une application en langage C qui s'appuie (notamment) sur GTK. Cependant, l'usage de l'interface graphique n'est pas systématique.
D'autre part, et c'est l'objet de mon post, je voudrais que cette application puisse forker et dæmoniser sur demande de l'utilisateur, c'est-à-dire sur un clic de l'utilisateur.
J'aimerais donc savoir s'il est possible de forker sans danger depuis une fonction de call back(pas faisable à mon avis) où s'il faut forcément (…)
Forum Programmation.c Connexion à un serveur de jeu d'echec.
Boujour.
Je développe depuis quelques temps déjà une interface de jeu d'échec en GTK+. La dernière version permet de jouer contre gnuchess en local. Je commence à me pencher sur la possibilité de se connecter à un serveur de jeu type www.freechess.org.
En allant sur ce site, il est possible d'utiliser une de leurs interfaces, ou bien en utilisant telnet ( les admins du site déconseillent toutefois cette dernière possibilité pour des raisons évidentes de sécurité ).
Je me suis (…)
Je développe depuis quelques temps déjà une interface de jeu d'échec en GTK+. La dernière version permet de jouer contre gnuchess en local. Je commence à me pencher sur la possibilité de se connecter à un serveur de jeu type www.freechess.org.
En allant sur ce site, il est possible d'utiliser une de leurs interfaces, ou bien en utilisant telnet ( les admins du site déconseillent toutefois cette dernière possibilité pour des raisons évidentes de sécurité ).
Je me suis (…)
Forum Programmation.c synchronisation
bonjour tout le monde
je suis en train de programmer une application qui communique avec une autre application via un pseudo-terminal et je me suis retrouver devant un probleme de synchronisation des entrees sortie entre les deux programme
et puisque j'ai pas acces au code de l'autre programme j'ai pas trouvé de solution
donc est ce qu'il est indispensable de modifier dans le code de l'autre programme pour gerer la synchronisation ?
s'il y a une autre façon de le (…)
je suis en train de programmer une application qui communique avec une autre application via un pseudo-terminal et je me suis retrouver devant un probleme de synchronisation des entrees sortie entre les deux programme
et puisque j'ai pas acces au code de l'autre programme j'ai pas trouvé de solution
donc est ce qu'il est indispensable de modifier dans le code de l'autre programme pour gerer la synchronisation ?
s'il y a une autre façon de le (…)
Forum Programmation.c Threads
Bon en fait je sais pas si le titre du post est le bon...
j'explique ce que je cherche à faire:
j'ai un programme graphique en C qui tourne, et j'aimerai ajouter "un truc parallel", pour faire changer de couleur un logo, et cela sans affecter les capacitées du programme...
est-ce bien de threads dont on parle dans ces cas là? si oui pourriez vous me donner une adresse de tuto, parceque j'ai cherché et j'ai que des trucs en (…)
j'explique ce que je cherche à faire:
j'ai un programme graphique en C qui tourne, et j'aimerai ajouter "un truc parallel", pour faire changer de couleur un logo, et cela sans affecter les capacitées du programme...
est-ce bien de threads dont on parle dans ces cas là? si oui pourriez vous me donner une adresse de tuto, parceque j'ai cherché et j'ai que des trucs en (…)
Forum Programmation.c Récupérer les offsets des membres d'une structure.
Bonjour,
Je programme en langage C depuis un certain temps, mais pour finaliser un projet actuellement en cours, je cherche à accomplir une chose à laquelle je n'ai pas encore été confronté (en C).
Mon but est « d'externaliser », un peu comme en Java, le contenu des membres d'une structure sous forme texte au travers d'un fichier ou d'un socket. L'objectif est de pouvoir synchroniser ce contenu entre deux structures homologues sur deux machines différentes, ou de permettre leur sauvegarde (…)
Je programme en langage C depuis un certain temps, mais pour finaliser un projet actuellement en cours, je cherche à accomplir une chose à laquelle je n'ai pas encore été confronté (en C).
Mon but est « d'externaliser », un peu comme en Java, le contenu des membres d'une structure sous forme texte au travers d'un fichier ou d'un socket. L'objectif est de pouvoir synchroniser ce contenu entre deux structures homologues sur deux machines différentes, ou de permettre leur sauvegarde (…)
Forum Programmation.c création d'un fichier rpm
Bonjour à tous et à toute!
je suis en phase de terminer un programme, qui peut s'éxécuter en mode graphique( je n'ai pas besion d'un terminal).
Ce que je voudrait savoir c'est comment faire pour créer un fichier rpm,
ensuite, y a t'il un fichier rpm à faire pour chaque distrib différentes?
Et pour finir, mon code se sert d'un librairie qui ne marche que sous linux, car elle se sert de Xwindow, mais est-ce que une fois compiler, le (…)
je suis en phase de terminer un programme, qui peut s'éxécuter en mode graphique( je n'ai pas besion d'un terminal).
Ce que je voudrait savoir c'est comment faire pour créer un fichier rpm,
ensuite, y a t'il un fichier rpm à faire pour chaque distrib différentes?
Et pour finir, mon code se sert d'un librairie qui ne marche que sous linux, car elle se sert de Xwindow, mais est-ce que une fois compiler, le (…)
Forum Programmation.c Segmentation fault!
Bonjour à tous,
J'ai un problème de segmentation dans le code qui suit mais je ne vois vraiment pas pourquoi?
#define NB_ELEM 300 typedef int Tab[NB_ELEM]; void init_tab(Tab *local_tab) { int i; for(i=0;i<NB_ELEM;i++) *local_tab[i]=1; } void main(void) { Tab tableau; init_tab(&tableau); }Si quelqu'un à la moindre idée d'ou ça peu provenir, je suis preneur. Merci.
Forum Programmation.c Programme qui referme mon lecteur CD
Salut, je n'y connai absolument rien en programmation, je suis en train de créer un live cd, j'ai presque terminé, récemment je bloquais sur un problème qui était que lorsque j'étaignais mon pc avec mon live cd dedans celui-ci ne s'éjectait pas, heureusement grâce au forum, des personnes m'ont aidé à faire un petit programme qui force l'éjection du CD-rom à la fermeture (ils m'ont donné le code et je n'ai eu qu'à le compiler).
Mais, maintenant il faudrait que (…)
Mais, maintenant il faudrait que (…)
Forum Programmation.c Trop de fichiers ouverts ...
Bonjour,
J'ai une application qui tourne sous Linux (Mandrake) et qui ouvre en ecriture plus de 1000 fichiers. A l'execution, j'ai une erreur errno 24, qui survient apparemment lorsque trop de fichiers sont ouverts.
Peut-on modifier en C, par l'application le nombre de fichiers que le systeme peut ouvrir simultanement ?
Sinon comment configurer le systeme pour modifier ce parametrage ?
En faisant sysctl -a sous linux, j'ai pourtant fs.file-max = 32767 !!
Merci
J'ai une application qui tourne sous Linux (Mandrake) et qui ouvre en ecriture plus de 1000 fichiers. A l'execution, j'ai une erreur errno 24, qui survient apparemment lorsque trop de fichiers sont ouverts.
Peut-on modifier en C, par l'application le nombre de fichiers que le systeme peut ouvrir simultanement ?
Sinon comment configurer le systeme pour modifier ce parametrage ?
En faisant sysctl -a sous linux, j'ai pourtant fs.file-max = 32767 !!
Merci
Forum Programmation.c Trop de fichiers ouverts ...
Bonjour,
J'ai une application qui tourne sous Linux (Mandrake) et qui ouvre en ecriture plus de 1000 fichiers. A l'execution, j'ai une erreur errno 24, qui survient apparemment lorsque trop de fichiers sont ouverts.
Peut-on modifier en C, par l'application le nombre de fichiers que le systeme peut ouvrir simultanement ?
Sinon comment configurer le systeme pour modifier ce parametrage ?
En faisant sysctl -a sous linux, j'ai pourtant fs.file-max = 32767 !!
Merci
J'ai une application qui tourne sous Linux (Mandrake) et qui ouvre en ecriture plus de 1000 fichiers. A l'execution, j'ai une erreur errno 24, qui survient apparemment lorsque trop de fichiers sont ouverts.
Peut-on modifier en C, par l'application le nombre de fichiers que le systeme peut ouvrir simultanement ?
Sinon comment configurer le systeme pour modifier ce parametrage ?
En faisant sysctl -a sous linux, j'ai pourtant fs.file-max = 32767 !!
Merci
Forum Programmation.c segmentation fault sur instructions d'entrée/sortie
Bonjour à tous
Je suis en train de faire un prog. de cryptographie (rsa + sha1) et j'ai un petit soucis de mémoire il me semble.
J'ai créé une structure pouvant contenir le message à signer avec sha1 ainsi que la signature et la taille du message. Et lorsque j'initialise la signature, les instructions d'entrée/sortie qui suivent m'affichent à l'exécution des messages comme le message d'erreur ci-dessous. J'utilise gcc3.4.1.
Voici un code "épuré" qui me fournit l'erreur :
Je suis en train de faire un prog. de cryptographie (rsa + sha1) et j'ai un petit soucis de mémoire il me semble.
J'ai créé une structure pouvant contenir le message à signer avec sha1 ainsi que la signature et la taille du message. Et lorsque j'initialise la signature, les instructions d'entrée/sortie qui suivent m'affichent à l'exécution des messages comme le message d'erreur ci-dessous. J'utilise gcc3.4.1.
Voici un code "épuré" qui me fournit l'erreur :
#include <stdio.h>
(…)
Forum Programmation.c fwrite vs write
Bonjour,
Je développe un programme GTK+, et la question de l'écriture vers des fichiers est un peu confuse pour moi... la glib ne fournit un wrapper pour l'ouverture (g_open) mais pas pour la lecture/écriture d'un fichier...
Je dois donc choisir entre des appels à fwrite ou write. Mais lequel utiliser pour avoir un programme portable (sous linux et windows) ? En gros, guelle sont les différences entre les fonctions read/write/open , etc... et leur équivalent en f* ?
Question subsidiaire: (…)
Je développe un programme GTK+, et la question de l'écriture vers des fichiers est un peu confuse pour moi... la glib ne fournit un wrapper pour l'ouverture (g_open) mais pas pour la lecture/écriture d'un fichier...
Je dois donc choisir entre des appels à fwrite ou write. Mais lequel utiliser pour avoir un programme portable (sous linux et windows) ? En gros, guelle sont les différences entre les fonctions read/write/open , etc... et leur équivalent en f* ?
Question subsidiaire: (…)
Forum Programmation.c Synchroniser le dessin avec le balayage de l'écran
Dans un programme en C, j'ai besoin d'appeler une fonction à chaque rafraîchissement de l'écran. Si je pouvais associer une fonction "handler" au signal "Wait-For-Vsync", ce serait parfait. Y a-t-il un moyen de faire cela ? Je suis ouvert à toute suggestion.
PS : j'utilise le FrameBuffer du noyau.
PS : j'utilise le FrameBuffer du noyau.
Forum Programmation.c Fonctions de recherche réseau
Bonjour à toutes et à tous.
Je m'essaie depuis quelques temps à la programmation réseau. J'utilise pour ce faire la librairie Gnet couplée avec GTK.
Je désire scanner ma station de travail pour extraire tous les ports ouverts ( en TCP pour commencer ). Cette première étape ne pose pas de problème particulier. J'obtiens les ports ainsi qu'un socket sur chaque port.
La deuxième étape serait de trouver quelles applications ouvrent ces fameux ports. Un peu à la manière de (…)
Je m'essaie depuis quelques temps à la programmation réseau. J'utilise pour ce faire la librairie Gnet couplée avec GTK.
Je désire scanner ma station de travail pour extraire tous les ports ouverts ( en TCP pour commencer ). Cette première étape ne pose pas de problème particulier. J'obtiens les ports ainsi qu'un socket sur chaque port.
La deuxième étape serait de trouver quelles applications ouvrent ces fameux ports. Un peu à la manière de (…)
Forum Programmation.c Ecrire un parseur
Bonjour,
Je cherche de la doc ou des exemples (meme librairies pour m'inspirer) pour implementer un parseur bien codé et bien foutu en c, la je suis en train de coder un mini shell et ca me fait vraiment defaut. Mon parseur marche (dans presque tous les cas) mais c'est que des vieux hacks moches pour decouper le chaine recuperée sur stdin en argv comme il faut, et gerer les redirections/indirections/pipes.
J'ai quelques notions de theorie des langages, mais je (…)
Je cherche de la doc ou des exemples (meme librairies pour m'inspirer) pour implementer un parseur bien codé et bien foutu en c, la je suis en train de coder un mini shell et ca me fait vraiment defaut. Mon parseur marche (dans presque tous les cas) mais c'est que des vieux hacks moches pour decouper le chaine recuperée sur stdin en argv comme il faut, et gerer les redirections/indirections/pipes.
J'ai quelques notions de theorie des langages, mais je (…)
Forum Programmation.c pseudo-terminaux
mon qustion est assez simple et direct est ce q'on peux faire des read() et write() sur des pseudo-terminaux et transferant plus q'un caractere
Forum Programmation.c fichier texte
bonjour à tous!
je cherche comment faire pour utiliser un fichier texte...
je m'explique je veux créer par exemple un fichier record.txt, je fait cela en dehors de la programmation, "à la main", puis je veut pouvoir récupéré le texte qu'il y dessus et/ou le modifier...
je voulais essayer de faire une sauvegarde des records d'un jeu.
voila si vous avez des commandes spéciales qui permettent çà...
merci
je cherche comment faire pour utiliser un fichier texte...
je m'explique je veux créer par exemple un fichier record.txt, je fait cela en dehors de la programmation, "à la main", puis je veut pouvoir récupéré le texte qu'il y dessus et/ou le modifier...
je voulais essayer de faire une sauvegarde des records d'un jeu.
voila si vous avez des commandes spéciales qui permettent çà...
merci
Forum Programmation.c wchar_t, conversion multibyte et Unicode...
Bonsoir à tous :)
J'aurais encore une fois besoin de votre expertise pour cette fois les chaînes de caractère unicode.
J'ai commencé à coder un module pour gérer les chaînes, ajouté le support unicode, et tout semble marcher à peu près correctement, sauf l'affichage...
Quand je veux afficher une chaine qui contient vraiment des caractères spéciaux (par exemple des kanjis ou des voyelles avec umlaut), bah le printf ne l'affiche pas (pourtant avec %ls).
Interloqué, j'ai donc vérifié le contenu (…)
J'aurais encore une fois besoin de votre expertise pour cette fois les chaînes de caractère unicode.
J'ai commencé à coder un module pour gérer les chaînes, ajouté le support unicode, et tout semble marcher à peu près correctement, sauf l'affichage...
Quand je veux afficher une chaine qui contient vraiment des caractères spéciaux (par exemple des kanjis ou des voyelles avec umlaut), bah le printf ne l'affiche pas (pourtant avec %ls).
Interloqué, j'ai donc vérifié le contenu (…)