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.
| Dans l'article , | Gabriel Dos Reis écrit: | | > Vincent Lefevre <vincent+ writes: | | > | Dans l'article , | > | Gabriel Dos Reis écrit: | > | | > | > mouais, mais alors le même argument s'applique pour la conversion | > | > implicite void* -> T* pour n'importe quel T, type d'objet. Cette | > | > conversion implicite est beaucoup plus pernicieuse que l'arithmétique. | > | | > | Pourquoi? Le programmeur n'est-il pas censé connaître son langage et | > | programmer en conséquence? | | > Oui et alors ? Tu n'as jamais fait d'erreur ? | | Il semble alors que tu sois devenu plus sage,
| car quand je (ou autres utilisateurs) me plaignais de certains | choix du C, tu n'étais pas du même avis. Il devait y avoir le fait | de pouvoir utiliser | | for (...) | blah(); | | au lieu d'un | | for (...) | { | blah(); | }
| Dans l'article <m3r83s6x45.fsf@uniton.integrable-solutions.net>,
| Gabriel Dos Reis <gdr@integrable-solutions.net> écrit:
|
| > Vincent Lefevre <vincent+news@vinc17.org> writes:
|
| > | Dans l'article <m3n0eg1h7f.fsf@uniton.integrable-solutions.net>,
| > | Gabriel Dos Reis <gdr@integrable-solutions.net> écrit:
| > |
| > | > mouais, mais alors le même argument s'applique pour la conversion
| > | > implicite void* -> T* pour n'importe quel T, type d'objet. Cette
| > | > conversion implicite est beaucoup plus pernicieuse que l'arithmétique.
| > |
| > | Pourquoi? Le programmeur n'est-il pas censé connaître son langage et
| > | programmer en conséquence?
|
| > Oui et alors ? Tu n'as jamais fait d'erreur ?
|
| Il semble alors que tu sois devenu plus sage,
| car quand je (ou autres utilisateurs) me plaignais de certains
| choix du C, tu n'étais pas du même avis. Il devait y avoir le fait
| de pouvoir utiliser
|
| for (...)
| blah();
|
| au lieu d'un
|
| for (...)
| {
| blah();
| }
| Dans l'article , | Gabriel Dos Reis écrit: | | > Vincent Lefevre <vincent+ writes: | | > | Dans l'article , | > | Gabriel Dos Reis écrit: | > | | > | > mouais, mais alors le même argument s'applique pour la conversion | > | > implicite void* -> T* pour n'importe quel T, type d'objet. Cette | > | > conversion implicite est beaucoup plus pernicieuse que l'arithmétique. | > | | > | Pourquoi? Le programmeur n'est-il pas censé connaître son langage et | > | programmer en conséquence? | | > Oui et alors ? Tu n'as jamais fait d'erreur ? | | Il semble alors que tu sois devenu plus sage,
| car quand je (ou autres utilisateurs) me plaignais de certains | choix du C, tu n'étais pas du même avis. Il devait y avoir le fait | de pouvoir utiliser | | for (...) | blah(); | | au lieu d'un | | for (...) | { | blah(); | }
Je crois que le désaccord sur ce point n'a pas disparu : rendre optionel, oui. Obligatoire non.
-- Gaby
--=-=-=--
Emmanuel Delahaye
In 'fr.comp.lang.c', Laurent Deniau wrote:
et tripafouiller de la mémoire brute. C classic, utilisait char. Le comité a introduit void* à la place, mais n'a pas étandu les règles d'arithmétique de pointeur. Bien sûr, on peur caster void* and char* et faire l'arithmétique, mais il aurait été plus simple d'avoir l'arithmétique directement une fois que le pas a été franchis.
Par forcement (en tout cas c'est pas mon avis). On peut utiliser void* pour faire de l'ADT, et authoriser une arithmetique dessus peut-etre dangereux pour qui manipulerait par inadvertance des pointeurs de ce type.
Tout à fait d'accord. (Pratique quotidienne)
-- -ed- [remove YOURBRA before answering me] The C-language FAQ: http://www.eskimo.com/~scs/C-faq/top.html <blank line> FAQ de f.c.l.c : http://www.isty-info.uvsq.fr/~rumeau/fclc/
In 'fr.comp.lang.c', Laurent Deniau <Laurent.Deniau@cern.ch> wrote:
et tripafouiller de la mémoire brute. C classic, utilisait char. Le
comité a introduit void* à la place, mais n'a pas étandu les règles
d'arithmétique de pointeur. Bien sûr, on peur caster void* and char*
et faire l'arithmétique, mais il aurait été plus simple d'avoir
l'arithmétique directement une fois que le pas a été franchis.
Par forcement (en tout cas c'est pas mon avis). On peut utiliser void*
pour faire de l'ADT, et authoriser une arithmetique dessus peut-etre
dangereux pour qui manipulerait par inadvertance des pointeurs de ce
type.
Tout à fait d'accord. (Pratique quotidienne)
--
-ed- emdelYOURBRA@noos.fr [remove YOURBRA before answering me]
The C-language FAQ: http://www.eskimo.com/~scs/C-faq/top.html
<blank line>
FAQ de f.c.l.c : http://www.isty-info.uvsq.fr/~rumeau/fclc/
et tripafouiller de la mémoire brute. C classic, utilisait char. Le comité a introduit void* à la place, mais n'a pas étandu les règles d'arithmétique de pointeur. Bien sûr, on peur caster void* and char* et faire l'arithmétique, mais il aurait été plus simple d'avoir l'arithmétique directement une fois que le pas a été franchis.
Par forcement (en tout cas c'est pas mon avis). On peut utiliser void* pour faire de l'ADT, et authoriser une arithmetique dessus peut-etre dangereux pour qui manipulerait par inadvertance des pointeurs de ce type.
Tout à fait d'accord. (Pratique quotidienne)
-- -ed- [remove YOURBRA before answering me] The C-language FAQ: http://www.eskimo.com/~scs/C-faq/top.html <blank line> FAQ de f.c.l.c : http://www.isty-info.uvsq.fr/~rumeau/fclc/
Emmanuel Delahaye
In 'fr.comp.lang.c', "Antoine Leca" wrote:
Laurent Deniau écrivit:
Typiquement mon ADT en C ressemble a ca:
Heu, excusez la question du Neu-neu, ADT, que es aco?
Abstract Data Type, mais je n'ose pas croire que tu l'ignorais...
-- -ed- [remove YOURBRA before answering me] The C-language FAQ: http://www.eskimo.com/~scs/C-faq/top.html <blank line> FAQ de f.c.l.c : http://www.isty-info.uvsq.fr/~rumeau/fclc/
In 'fr.comp.lang.c', "Antoine Leca" <root@localhost.gov> wrote:
Laurent Deniau écrivit:
Typiquement mon ADT en C ressemble a ca:
Heu, excusez la question du Neu-neu, ADT, que es aco?
Abstract Data Type, mais je n'ose pas croire que tu l'ignorais...
--
-ed- emdelYOURBRA@noos.fr [remove YOURBRA before answering me]
The C-language FAQ: http://www.eskimo.com/~scs/C-faq/top.html
<blank line>
FAQ de f.c.l.c : http://www.isty-info.uvsq.fr/~rumeau/fclc/