Je cherche un moyen de connaitre la position d'une occurence dans une chaine
J'ai essayé :
temp = strstr(bufferspace, "truc");
taille = temp-bufferspace;
Ne fonctionne pas car temp peut prendre la valeur NULL et donc le
compilateur refuse.
Etant dans l'espace noyau, je n'ai accès qu'a des fonctions sortant un
pointeur, et non la position.
De toute maniere, pourquoi ne pas preferer ecrire du code portable C/C++ lorsque ca ne coute rien ?
Les langages C et C++ sont différents. Lorsque tu sauras de quoi tu parles, tu pourras revenir ici donner tes bons conseils.
et pan !
-- DINH V. Hoa,
"monde de merde" -- Erwan David
Gabriel Dos Reis
Emmanuel Delahaye writes:
| In 'fr.comp.lang.c', "Ivan Vecerina" wrote: | | > De toute maniere, pourquoi ne pas preferer ecrire du code | > portable C/C++ lorsque ca ne coute rien ? | | Les langages C et C++ sont différents. Lorsque tu sauras de quoi tu parles, | tu pourras revenir ici donner tes bons conseils.
C'est possible mais ta réponse précédente n'offre pas le moindre début de soupçon d'ombre comme quoi tu sais de quoi tu parles.
Alors, hôpital qui se fout de la charité ?
-- Gaby
Emmanuel Delahaye <emdelYOURBRA@noos.fr> writes:
| In 'fr.comp.lang.c', "Ivan Vecerina" <ivec@myrealbox.com> wrote:
|
| > De toute maniere, pourquoi ne pas preferer ecrire du code
| > portable C/C++ lorsque ca ne coute rien ?
|
| Les langages C et C++ sont différents. Lorsque tu sauras de quoi tu parles,
| tu pourras revenir ici donner tes bons conseils.
C'est possible mais ta réponse précédente n'offre pas le moindre
début de soupçon d'ombre comme quoi tu sais de quoi tu parles.
| In 'fr.comp.lang.c', "Ivan Vecerina" wrote: | | > De toute maniere, pourquoi ne pas preferer ecrire du code | > portable C/C++ lorsque ca ne coute rien ? | | Les langages C et C++ sont différents. Lorsque tu sauras de quoi tu parles, | tu pourras revenir ici donner tes bons conseils.
C'est possible mais ta réponse précédente n'offre pas le moindre début de soupçon d'ombre comme quoi tu sais de quoi tu parles.
Alors, hôpital qui se fout de la charité ?
-- Gaby
Gabriel Dos Reis
Emmanuel Delahaye writes:
| In 'fr.comp.lang.c', Francois Cartegnie wrote: | | > argh.. j'ai trouvé. j'ai un unsigned char * et un char * . | > Ca me donne pas la raison de l'erreur, etant donné qu'ils sont codés sur | > le même nb de bits et que j'avais aussi essayé de soustraire en les | | Mais le type est différent. Cependant, je pense qu'en C, ça ne méritait qu'un | warning.
Pour quelles raisons ?
| | > forçant en unsigned char avant la soustraction. | | est-tu sûr que tu utilises un compilateur C et non C++?
qu'est-ce que ça change en ce qui concerne unsigned char* et char* ?
-- Gaby
Emmanuel Delahaye <emdelYOURBRA@noos.fr> writes:
| In 'fr.comp.lang.c', Francois Cartegnie <NOSPAM@TAMAMAN.OWC> wrote:
|
| > argh.. j'ai trouvé. j'ai un unsigned char * et un char * .
| > Ca me donne pas la raison de l'erreur, etant donné qu'ils sont codés sur
| > le même nb de bits et que j'avais aussi essayé de soustraire en les
|
| Mais le type est différent. Cependant, je pense qu'en C, ça ne méritait qu'un
| warning.
Pour quelles raisons ?
|
| > forçant en unsigned char avant la soustraction.
|
| est-tu sûr que tu utilises un compilateur C et non C++?
qu'est-ce que ça change en ce qui concerne unsigned char* et char* ?
| In 'fr.comp.lang.c', Francois Cartegnie wrote: | | > argh.. j'ai trouvé. j'ai un unsigned char * et un char * . | > Ca me donne pas la raison de l'erreur, etant donné qu'ils sont codés sur | > le même nb de bits et que j'avais aussi essayé de soustraire en les | | Mais le type est différent. Cependant, je pense qu'en C, ça ne méritait qu'un | warning.
Pour quelles raisons ?
| | > forçant en unsigned char avant la soustraction. | | est-tu sûr que tu utilises un compilateur C et non C++?
qu'est-ce que ça change en ce qui concerne unsigned char* et char* ?
-- Gaby
Jalico
Là il semble que ce soit toi qui ne saches pas de quoi tu parles ...
"Gabriel Dos Reis" a écrit dans le message de news:
Emmanuel Delahaye writes:
| In 'fr.comp.lang.c', Francois Cartegnie wrote: | | > argh.. j'ai trouvé. j'ai un unsigned char * et un char * . | > Ca me donne pas la raison de l'erreur, etant donné qu'ils sont codés sur
| > le même nb de bits et que j'avais aussi essayé de soustraire en les | | Mais le type est différent. Cependant, je pense qu'en C, ça ne méritait qu'un
| warning.
Pour quelles raisons ?
| | > forçant en unsigned char avant la soustraction. | | est-tu sûr que tu utilises un compilateur C et non C++?
qu'est-ce que ça change en ce qui concerne unsigned char* et char* ?
-- Gaby
Là il semble que ce soit toi qui ne saches pas de quoi tu parles ...
"Gabriel Dos Reis" <gdr@integrable-solutions.net> a écrit dans le message de
news:m3ptjkdyd5.fsf@uniton.integrable-solutions.net...
Emmanuel Delahaye <emdelYOURBRA@noos.fr> writes:
| In 'fr.comp.lang.c', Francois Cartegnie <NOSPAM@TAMAMAN.OWC> wrote:
|
| > argh.. j'ai trouvé. j'ai un unsigned char * et un char * .
| > Ca me donne pas la raison de l'erreur, etant donné qu'ils sont codés
sur
| > le même nb de bits et que j'avais aussi essayé de soustraire en les
|
| Mais le type est différent. Cependant, je pense qu'en C, ça ne méritait
qu'un
| warning.
Pour quelles raisons ?
|
| > forçant en unsigned char avant la soustraction.
|
| est-tu sûr que tu utilises un compilateur C et non C++?
qu'est-ce que ça change en ce qui concerne unsigned char* et char* ?
Là il semble que ce soit toi qui ne saches pas de quoi tu parles ...
"Gabriel Dos Reis" a écrit dans le message de news:
Emmanuel Delahaye writes:
| In 'fr.comp.lang.c', Francois Cartegnie wrote: | | > argh.. j'ai trouvé. j'ai un unsigned char * et un char * . | > Ca me donne pas la raison de l'erreur, etant donné qu'ils sont codés sur
| > le même nb de bits et que j'avais aussi essayé de soustraire en les | | Mais le type est différent. Cependant, je pense qu'en C, ça ne méritait qu'un
| warning.
Pour quelles raisons ?
| | > forçant en unsigned char avant la soustraction. | | est-tu sûr que tu utilises un compilateur C et non C++?
qu'est-ce que ça change en ce qui concerne unsigned char* et char* ?
-- Gaby
Ivan Vecerina
"Emmanuel Delahaye" wrote in message news: | In 'fr.comp.lang.c', "Ivan Vecerina" wrote: | | > De toute maniere, pourquoi ne pas preferer ecrire du code | > portable C/C++ lorsque ca ne coute rien ? | | Les langages C et C++ sont différents. Lorsque tu sauras de quoi tu parles, | tu pourras revenir ici donner tes bons conseils.
Te t'invite a te referer a la reponse que j'ai donnee a Erwan David. Que reproches-tu exactement au conseil que j'ai donne ?
| Mais le type est différent. Cependant, je pense qu'en C, | ça ne méritait warning.
As-tu seulement une fois lu et compris le standard ISO C ?
Ivan -- http://www.post1.com/~ivec
"Emmanuel Delahaye" <emdelYOURBRA@noos.fr> wrote in message
news:Xns93CE9C4C8D71Dhsnoservernet@130.133.1.4...
| In 'fr.comp.lang.c', "Ivan Vecerina" <ivec@myrealbox.com> wrote:
|
| > De toute maniere, pourquoi ne pas preferer ecrire du code
| > portable C/C++ lorsque ca ne coute rien ?
|
| Les langages C et C++ sont différents. Lorsque tu sauras de quoi tu
parles,
| tu pourras revenir ici donner tes bons conseils.
Te t'invite a te referer a la reponse que j'ai donnee a Erwan David.
Que reproches-tu exactement au conseil que j'ai donne ?
| Mais le type est différent. Cependant, je pense qu'en C,
| ça ne méritait warning.
As-tu seulement une fois lu et compris le standard ISO C ?
"Emmanuel Delahaye" wrote in message news: | In 'fr.comp.lang.c', "Ivan Vecerina" wrote: | | > De toute maniere, pourquoi ne pas preferer ecrire du code | > portable C/C++ lorsque ca ne coute rien ? | | Les langages C et C++ sont différents. Lorsque tu sauras de quoi tu parles, | tu pourras revenir ici donner tes bons conseils.
Te t'invite a te referer a la reponse que j'ai donnee a Erwan David. Que reproches-tu exactement au conseil que j'ai donne ?
| Mais le type est différent. Cependant, je pense qu'en C, | ça ne méritait warning.
As-tu seulement une fois lu et compris le standard ISO C ?
Ivan -- http://www.post1.com/~ivec
Francois Cartegnie
Mais le type est différent. Cependant, je pense qu'en C, ça ne méritait qu'un warning. mais l'erreur donnée n'est pas une erreur de typage.
forçant en unsigned char avant la soustraction.
est-tu sûr que tu utilises un compilateur C et non C++?
Mets ça dans ton code (n'importe où)
#ifdef __cplusplus #error Please use a C-compiler #endif
GCC 3.2...
Mais le type est différent. Cependant, je pense qu'en C, ça ne méritait qu'un
warning.
mais l'erreur donnée n'est pas une erreur de typage.
forçant en unsigned char avant la soustraction.
est-tu sûr que tu utilises un compilateur C et non C++?
Mets ça dans ton code (n'importe où)
#ifdef __cplusplus
#error Please use a C-compiler
#endif
Mais le type est différent. Cependant, je pense qu'en C, ça ne méritait qu'un warning. mais l'erreur donnée n'est pas une erreur de typage.
forçant en unsigned char avant la soustraction.
est-tu sûr que tu utilises un compilateur C et non C++?
Mets ça dans ton code (n'importe où)
#ifdef __cplusplus #error Please use a C-compiler #endif
GCC 3.2...
Ivan Vecerina
"Francois Cartegnie" wrote in message news:bgofqt$cia$ | > Mets ça dans ton code (n'importe où) | > | > #ifdef __cplusplus | > #error Please use a C-compiler | > #endif | > | | GCC 3.2...
Personellement, je laisserais l'adjonction de ces trois lignes de code aux acharnés obscurantistes. Cependant...
Comme d'autre compilateurs C/C++, GCC permet de compiler en mode stricte ANSI C. Si tu souhaites pouvoir mettre ces 3 lignes dans ton code, je pense que le parametre suivant dans la ligne de commande fera l'affaire: -stdÉ9 Ce genre d'option de compilation peut être utile pour s'assurer que le code écrit sera plus portable vers d'autres compilateurs C.
Ivan -- http://www.post1.com/~ivec
"Francois Cartegnie" <NOSPAM@TAMAMAN.OWC> wrote in message
news:bgofqt$cia$1@apollon.grec.isp.9tel.net...
| > Mets ça dans ton code (n'importe où)
| >
| > #ifdef __cplusplus
| > #error Please use a C-compiler
| > #endif
| >
|
| GCC 3.2...
Personellement, je laisserais l'adjonction de ces
trois lignes de code aux acharnés obscurantistes.
Cependant...
Comme d'autre compilateurs C/C++, GCC permet de compiler
en mode stricte ANSI C.
Si tu souhaites pouvoir mettre ces 3 lignes dans ton code,
je pense que le parametre suivant dans la ligne de commande
fera l'affaire:
-stdÉ9
Ce genre d'option de compilation peut être utile pour
s'assurer que le code écrit sera plus portable vers
d'autres compilateurs C.
"Francois Cartegnie" wrote in message news:bgofqt$cia$ | > Mets ça dans ton code (n'importe où) | > | > #ifdef __cplusplus | > #error Please use a C-compiler | > #endif | > | | GCC 3.2...
Personellement, je laisserais l'adjonction de ces trois lignes de code aux acharnés obscurantistes. Cependant...
Comme d'autre compilateurs C/C++, GCC permet de compiler en mode stricte ANSI C. Si tu souhaites pouvoir mettre ces 3 lignes dans ton code, je pense que le parametre suivant dans la ligne de commande fera l'affaire: -stdÉ9 Ce genre d'option de compilation peut être utile pour s'assurer que le code écrit sera plus portable vers d'autres compilateurs C.
Ivan -- http://www.post1.com/~ivec
Francois Cartegnie
Francois Cartegnie wrote:
Mais le type est différent. Cependant, je pense qu'en C, ça ne méritait qu'un warning.
mais l'erreur donnée n'est pas une erreur de typage.
forçant en unsigned char avant la soustraction.
est-tu sûr que tu utilises un compilateur C et non C++?
Mets ça dans ton code (n'importe où)
#ifdef __cplusplus #error Please use a C-compiler #endif
GCC 3.2...
Pour exemple, ce code passe pas a la compilation et génère un " invalid operands to binary - " au lieu d'un warning.
char * a; unsigned char * b; b = strstr(a, "truc"); int size = b - a; }
DINH Viêt Hoà
Comme d'autre compilateurs C/C++, GCC permet de compiler en mode stricte ANSI C.
Tu feras attention. Lorsque tu parles de compilateurs C/C++, il paraît dans un premier temps évident à tout le monde que tu penses que le C++ n'est qu'un ajout de mots-clefs par rapport au C et que tout code C passerait dans un compilateur qu'il soit C++ ou C.
-- DINH V. Hoa,
"monde de merde" -- Erwan David
Comme d'autre compilateurs C/C++, GCC permet de compiler
en mode stricte ANSI C.
Tu feras attention. Lorsque tu parles de compilateurs C/C++, il paraît
dans un premier temps évident à tout le monde que tu penses que le C++
n'est qu'un ajout de mots-clefs par rapport au C et que tout code C
passerait dans un compilateur qu'il soit C++ ou C.
Comme d'autre compilateurs C/C++, GCC permet de compiler en mode stricte ANSI C.
Tu feras attention. Lorsque tu parles de compilateurs C/C++, il paraît dans un premier temps évident à tout le monde que tu penses que le C++ n'est qu'un ajout de mots-clefs par rapport au C et que tout code C passerait dans un compilateur qu'il soit C++ ou C.
-- DINH V. Hoa,
"monde de merde" -- Erwan David
Ivan Vecerina
"Erwan David" wrote in message news: | "Ivan Vecerina" écrivait : | | > Te t'invite a te referer a la reponse que j'ai donnee a Erwan David. | > Que reproches-tu exactement au conseil que j'ai donne ? | | Que si on programme en C c'ets pas pour s'emmerder avec la | sémantique d'un autre langage fut-il proche.
Lorsque le standard C99 a ete publie, j'ai rapidement ete a l'aise avec des nouveautes telles que 'const', 'bool' ( ou '_Bool' ), 'inline', et d'autres extensions qui sont apparues en premier en C++.
Le fait de connaître et de programmer en C (je donne dans de l'embarque en ce moment) me prepare egalement au futur C++.
Les mondes du C et du C++ ne sont pas hermetiquement separes. De nombreux developpeurs codent dans ces deux languages.
Professionellement, il est extremement utile de comprendre et de pouvoir utiliser non seulement ces languages, mais egalement Perl, Python, C#, Java, PHP, Scheme, etc etc.
N'est-il pas utile de pouvoir choisir toujours l'outil le mieux adapté?
Peut-etre a consulter: http://www.pragmaticprogrammer.com/ppbook/extracts/rule_list.html http://www.research.att.com/~bs/sibling_rivalry.pdf
Maintenant, certes, on peut choisir de s'en tenir a un seul languages. Mais de la a traiter d'ignorants ceux qui ont l'esprit plus ouvert ?
Amicalement, Ivan
-- http://www.post1.com/~ivec
"Erwan David" <erwan@rail.eu.org> wrote in message
news:85zniojh21.fsf@bretagne.rail.eu.org...
| "Ivan Vecerina" <ivec@myrealbox.com> écrivait :
|
| > Te t'invite a te referer a la reponse que j'ai donnee a Erwan David.
| > Que reproches-tu exactement au conseil que j'ai donne ?
|
| Que si on programme en C c'ets pas pour s'emmerder avec la
| sémantique d'un autre langage fut-il proche.
Lorsque le standard C99 a ete publie, j'ai rapidement ete a l'aise
avec des nouveautes telles que 'const', 'bool' ( ou '_Bool' ),
'inline', et d'autres extensions qui sont apparues en premier en C++.
Le fait de connaître et de programmer en C (je donne dans de l'embarque
en ce moment) me prepare egalement au futur C++.
Les mondes du C et du C++ ne sont pas hermetiquement separes.
De nombreux developpeurs codent dans ces deux languages.
Professionellement, il est extremement utile de comprendre et de
pouvoir utiliser non seulement ces languages, mais egalement Perl,
Python, C#, Java, PHP, Scheme, etc etc.
N'est-il pas utile de pouvoir choisir toujours l'outil le mieux adapté?
Peut-etre a consulter:
http://www.pragmaticprogrammer.com/ppbook/extracts/rule_list.html
http://www.research.att.com/~bs/sibling_rivalry.pdf
Maintenant, certes, on peut choisir de s'en tenir a un seul languages.
Mais de la a traiter d'ignorants ceux qui ont l'esprit plus ouvert ?
"Erwan David" wrote in message news: | "Ivan Vecerina" écrivait : | | > Te t'invite a te referer a la reponse que j'ai donnee a Erwan David. | > Que reproches-tu exactement au conseil que j'ai donne ? | | Que si on programme en C c'ets pas pour s'emmerder avec la | sémantique d'un autre langage fut-il proche.
Lorsque le standard C99 a ete publie, j'ai rapidement ete a l'aise avec des nouveautes telles que 'const', 'bool' ( ou '_Bool' ), 'inline', et d'autres extensions qui sont apparues en premier en C++.
Le fait de connaître et de programmer en C (je donne dans de l'embarque en ce moment) me prepare egalement au futur C++.
Les mondes du C et du C++ ne sont pas hermetiquement separes. De nombreux developpeurs codent dans ces deux languages.
Professionellement, il est extremement utile de comprendre et de pouvoir utiliser non seulement ces languages, mais egalement Perl, Python, C#, Java, PHP, Scheme, etc etc.
N'est-il pas utile de pouvoir choisir toujours l'outil le mieux adapté?
Peut-etre a consulter: http://www.pragmaticprogrammer.com/ppbook/extracts/rule_list.html http://www.research.att.com/~bs/sibling_rivalry.pdf
Maintenant, certes, on peut choisir de s'en tenir a un seul languages. Mais de la a traiter d'ignorants ceux qui ont l'esprit plus ouvert ?