Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1176 connectés 

 

Sujet(s) à lire :
    - Who's who@Programmation
 

 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  12167  12168  12169  ..  26189  26190  26191  26192  26193  26194
Auteur Sujet :

[blabla@hosto] Le topic des vieux

n°1596325
nraynaud
lol
Posté le 06-08-2007 à 18:10:25  profilanswer
 

Reprise du message précédent :
en tout cas, ici le '+' marche très bien, merci pour lui.
 
(bon on l'utilise pas énormément, mais ça arrive)


---------------
trainoo.com, c'est fini
mood
Publicité
Posté le 06-08-2007 à 18:10:25  profilanswer
 

n°1596327
Elmoricq
Modérateur
Posté le 06-08-2007 à 18:12:38  profilanswer
 

nraynaud a écrit :

en tout cas, ici le '+' marche très bien, merci pour lui.

 

(bon on l'utilise pas énormément, mais ça arrive)

 

Je découvre le C++ en contexte réel, là (riez pas [:benou]), et je prends mon pied avec l'objet, ça fait un putain de bien, j'sais pas si je pourrais retourner au C comme ça. Et j'aime pas le C++.

 

J'crois je vais me mettre à programmer chez moi. J'ai fait plusieurs tentatives mais j'ai toujours eu des crises de flemmes qui font que ça n'est jamais allé bien loin, la dernière fois ce fut quand j'ai découvert l'interface (touffue) de VS Express.


Message édité par Elmoricq le 06-08-2007 à 18:14:16
n°1596328
el muchach​o
Comfortably Numb
Posté le 06-08-2007 à 18:14:24  profilanswer
 

Elmoricq a écrit :


 
Euh non, strncpy() c'est une fonction très casse-gueule pour les débutants à cause du '\0' qui n'est pas posé si la chaîne source est plus grande que la chaîne destinataire (la source est tronquée, mais il n'y a pas de caractère null posé à la fin, c'est nul mais c'est ainsi).


C'est vrai, j'avais oublié ce cas-là bien pourri... :/
 
Apparemment, maintenant, la recommandation, ce serait strncpy_s


Message édité par el muchacho le 06-08-2007 à 18:16:53

---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
n°1596330
Lam's
Profil: bas.
Posté le 06-08-2007 à 18:17:31  profilanswer
 

el muchacho a écrit :


Si si, strncpy c'est le bien. [:spamafote]
Il n' y a vraiment que dans des routines de très bas niveau où on veut optimiser au max (et proprement unitairement testées) que strcpy vaut le coup. Mais j'imagine que Lam's tape svt dans du code de barbu. Dans ce cas, il peut parfois se permettre de ne pas suivre scrupuleusement certains "préceptes", si j'ose dire...
Effet collatéral, - et c'est pas un mal -, strncpy oblige systématiquement à se poser la question de la taille des espaces mémoire alloués, donc il oblige à passer souvent ces tailles en paramètre et à documenter cela.


Mais putain, peine de mort quoi!
Elmoricq a parfaitement bien résumé la situation: on ne sait *rien* sur la chaîne destination à la fin d'un strncpy. On ne sait pas où elle finit, quelle taille elle fait, s'il y a un zero à la fin, etc. Bref, une fonction inutile.  
 
Encore, snprintf, je veux bien, mais strncpy quand on fait du C++, c'est vraiment demander les emmerdes avec un grand A.

n°1596332
verdoux
And I'm still waiting
Posté le 06-08-2007 à 18:19:05  profilanswer
 

gfive a écrit :


 
[:spamafote] quand un client paie sa license WebLogic 40k€ par processeur, il demande à ce qu'on suitve les préco weblogic, à savoir utiliser la JDE WebLogic en 1.4.2


Ouais le client a un centaine de weblo 8.1 donc il va pas passer à une version 9 voire 10 comme ça.
Sans compter le portage du code et des mois de tests.

n°1596333
el muchach​o
Comfortably Numb
Posté le 06-08-2007 à 18:21:33  profilanswer
 

Lam's a écrit :


Mais putain, peine de mort quoi!
Elmoricq a parfaitement bien résumé la situation: on ne sait *rien* sur la chaîne destination à la fin d'un strncpy. On ne sait pas où elle finit, quelle taille elle fait, s'il y a un zero à la fin, etc. Bref, une fonction inutile.

 

Encore, snprintf, je veux bien, mais strncpy quand on fait du C++, c'est vraiment demander les emmerdes avec un grand A.


 :??:
Ben forcément si. Si on utilise strncpy, c'est bien parce qu'on est censé savoir que c'est une chaîne de caractères, donc avec un '\0', sinon autant utiliser memcpy.
Mais moi je parle de C, là, pas de C++, sinon j'utilise les string comme tout le monde.

Message cité 1 fois
Message édité par el muchacho le 06-08-2007 à 18:22:32

---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
n°1596335
Elmoricq
Modérateur
Posté le 06-08-2007 à 18:24:54  profilanswer
 

el muchacho a écrit :


 :??:
Ben forcément si. Si on utilise strncpy, c'est bien parce qu'on est censé savoir que c'est une chaîne de caractères, donc avec un '\0', sinon autant utiliser memcpy.
Mais moi je parle de C, là, pas de C++, sinon j'utilise les string comme tout le monde.

 

Oui mais justement, strncpy() n'a strictement aucun intérêt par rapport à memcpy(), puisque dans les deux cas, tu dois vérifier si source n'est pas plus grand que cible pour poser, le cas échéant, un caractère null en fin de chaîne destinataire.

 

Mieux vaut utiliser strncat() lorsque l'on est sûr que la chaîne débute par un '\0', ou plus simple, s'en tenir à snprintf() et ne pas se prendre la tête.

Message cité 1 fois
Message édité par Elmoricq le 06-08-2007 à 18:26:26
n°1596336
nraynaud
lol
Posté le 06-08-2007 à 18:29:03  profilanswer
 

pendant que vous débattez de comment on concatène des chaînes en C/C++, ici on construit un générateur automatique de tests en java si ça vous ennuie pas [:moule_bite]


---------------
trainoo.com, c'est fini
n°1596337
Elmoricq
Modérateur
Posté le 06-08-2007 à 18:30:15  profilanswer
 
n°1596338
el muchach​o
Comfortably Numb
Posté le 06-08-2007 à 18:31:08  profilanswer
 

Elmoricq a écrit :

 

Oui mais justement, strncpy() n'a strictement aucun intérêt par rapport à memcpy(), puisque dans les deux cas, tu dois vérifier si source n'est pas plus grand que cible pour poser, le cas échéant, un caractère null en fin de chaîne destinataire.

 

Mieux vaut utiliser strncat() lorsque l'on est sûr que la chaîne débute par un '\0', ou plus simple, s'en tenir à snprintf() et ne pas se prendre la tête.

 

Hmmm, m'ouais c'est vrai. [:pingouino]
Moi, je crois que je faisais un truc du genre (en embarqué)

 

strncpy(dest, src, sz);
dest[sz-1] = '\0';

 

Comme ça, réglé, quoi qu'il arrive. Evidemment, dans ce cas, on ne garantit pas l'intégrité du message d'origine, puisqu'on risque de perdre le dernier caractère ou plus...
Tant pis pour celui qui appelle la fonction avec la mauvaise taille.


Message édité par el muchacho le 06-08-2007 à 18:39:01

---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
mood
Publicité
Posté le 06-08-2007 à 18:31:08  profilanswer
 

n°1596339
nraynaud
lol
Posté le 06-08-2007 à 18:33:26  profilanswer
 


nan mais notre truc marche justement pas mal pour tester des systèmes qui concatènent des chaînes de caractères [:moule_bite]


---------------
trainoo.com, c'est fini
n°1596341
el muchach​o
Comfortably Numb
Posté le 06-08-2007 à 18:34:49  profilanswer
 

De toute façon, un passage sous Valgrind ou autre s'impose. :o


---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
n°1596342
Lam's
Profil: bas.
Posté le 06-08-2007 à 18:35:27  profilanswer
 

nraynaud a écrit :

pendant que vous débattez de comment on concatène des chaînes en C/C++, ici on construit un générateur automatique de tests en java si ça vous ennuie pas [:moule_bite]


Si tu savais le nombre de programmeurs java que je vois passer en entretien et qui ne savent pas utiliser StringBuffer. Mais bon, au moins, il n'y a pas mort d'homme comme avec strncpy (d'ailleurs, je comprends toujours pas qu'en 2007 on code en C ANSI et non pas en C99 ou en C++ . :/ )

n°1596343
nraynaud
lol
Posté le 06-08-2007 à 18:39:46  profilanswer
 

Lam's a écrit :


Si tu savais le nombre de programmeurs java que je vois passer en entretien et qui ne savent pas utiliser StringBuffer. Mais bon, au moins, il n'y a pas mort d'homme comme avec strncpy (d'ailleurs, je comprends toujours pas qu'en 2007 on code en C ANSI et non pas en C99 ou en C++ . :/ )


mais t'es has-been :(
 
on a interdit StringBuffer ici :(
 
c'est passé de mode :(
 
comme les startups qui font du push :(


---------------
trainoo.com, c'est fini
n°1596344
el muchach​o
Comfortably Numb
Posté le 06-08-2007 à 18:43:19  profilanswer
 

Et moi je peux me targuer de n'avoir jamais laissé trainer un dépassement mémoire dans mon code C/C++ et sur ce, je vous merde cordialement [:dawao]


---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
n°1596345
el muchach​o
Comfortably Numb
Posté le 06-08-2007 à 18:44:26  profilanswer
 

(bon ok, j'ai commis des tapées d'autres bugs...  :whistle: )


---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
n°1596346
zapan666
Tout est relatif
Posté le 06-08-2007 à 18:45:09  profilanswer
 

nraynaud a écrit :


on a interdit StringBuffer ici :(


/o\ p'tain, pourquoi, squoi qui est pas bien ?  


---------------
my flick r - Just Tab it !
n°1596347
kadreg
profil: Utilisateur
Posté le 06-08-2007 à 18:46:05  profilanswer
 
n°1596348
Lam's
Profil: bas.
Posté le 06-08-2007 à 18:46:16  profilanswer
 

nraynaud a écrit :


mais t'es has-been :(
 
on a interdit StringBuffer ici :(
 
c'est passé de mode :(
 
comme les startups qui font du push :(


Hmmmm. Insérer ici une référence à StringBuilder, Weblogic, JDK 1.4, etc.

n°1596349
masklinn
í dag viðrar vel til loftárása
Posté le 06-08-2007 à 18:47:10  profilanswer
 

nraynaud a écrit :


on a interdit StringBuffer ici :(
 
c'est passé de mode :(


StringBuilder ftw?


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1596350
nraynaud
lol
Posté le 06-08-2007 à 18:47:13  profilanswer
 

zapan666 a écrit :


/o\ p'tain, pourquoi, squoi qui est pas bien ?  


le StringBuilder la tendance. because StringBuffer c'est synchronisé.  
 
Et même souvent je gueule pour que les gens mettent des simples Writer+StringWriter à la place, mais l'IOException est un peu repoussante.


---------------
trainoo.com, c'est fini
n°1596351
Loom the G​loom
Even coders get the blues...
Posté le 06-08-2007 à 18:47:29  profilanswer
 

C4EST LE DELUGE §§§


---------------
Music|Market|Feed|Loom|DVD
n°1596352
masklinn
í dag viðrar vel til loftárása
Posté le 06-08-2007 à 18:48:05  profilanswer
 

zapan666 a écrit :


/o\ p'tain, pourquoi, squoi qui est pas bien ?  


http://java.sun.com/j2se/1.5.0/doc [...] ilder.html
 
Buffer est synchronisé d'office, ce qui n'est pas intéressant 99% du temps :o


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1596353
kadreg
profil: Utilisateur
Posté le 06-08-2007 à 18:50:34  profilanswer
 

:/


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°1596354
nraynaud
lol
Posté le 06-08-2007 à 18:50:36  profilanswer
 

Lam's a écrit :


Hmmmm. Insérer ici une référence à StringBuilder, Weblogic, JDK 1.4, etc.


mais Weblogic c'est ni pojo ni un clone de RoR :(
 
Lam's tu as compté tes points de retraite ? il faudrait y songer :(


---------------
trainoo.com, c'est fini
n°1596355
nraynaud
lol
Posté le 06-08-2007 à 18:51:49  profilanswer
 

masklinn a écrit :


http://java.sun.com/j2se/1.5.0/doc [...] ilder.html
 
Buffer est synchronisé d'office, ce qui n'est pas intéressant 99% du temps :o


j'pense même 100% du temps parceque même en multithread, se synchroniser là-dessus ça sent la morue de toutes façons.


---------------
trainoo.com, c'est fini
n°1596357
masklinn
í dag viðrar vel til loftárása
Posté le 06-08-2007 à 18:53:35  profilanswer
 

nraynaud a écrit :


j'pense même 100% du temps parceque même en multithread, se synchroniser là-dessus ça sent la morue de toutes façons.


99.9999% du temps alors

 

Chuis sûr qu'on peut trouver un truc complètement stupide dans lequel n threads append sur un StringBuffer unique et m threads toStringisent dessus régulièrement [:pingouino]

 

Une genre de version débile d'une Producer/Consumer queue


Message édité par masklinn le 06-08-2007 à 18:54:02

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1596358
Lam's
Profil: bas.
Posté le 06-08-2007 à 18:54:54  profilanswer
 

nraynaud a écrit :


mais Weblogic c'est ni pojo ni un clone de RoR :(
 
Lam's tu as compté tes points de retraite ? il faudrait y songer :(


Je suis encore vert, j'ai beaucoup de sève qui coule. Tu ne te débarrasseras pas de moi si facilement.
(sinon, côté nouvelle techno, j'essaye d'initier très doucement mes collègues à Python. On peut pas dire que ce soit un succès pour le moment, entre ceux qui préfèrent scripter en Java, ceux qui font des programmes avec fonctions et boucles en csh, et les 2 fondus de perl...).

n°1596360
zapan666
Tout est relatif
Posté le 06-08-2007 à 18:58:51  profilanswer
 

Lam's a écrit :


 entre ceux qui préfèrent scripter en Java


[:pingouino] pourquoi faire en 5min ce qu'on peut faire en 5h


Message édité par zapan666 le 06-08-2007 à 18:59:06

---------------
my flick r - Just Tab it !
n°1596361
masklinn
í dag viðrar vel til loftárása
Posté le 06-08-2007 à 19:01:31  profilanswer
 

Lam's a écrit :


Je suis encore vert, j'ai beaucoup de sève qui coule. Tu ne te débarrasseras pas de moi si facilement.
(sinon, côté nouvelle techno, j'essaye d'initier très doucement mes collègues à Python. On peut pas dire que ce soit un succès pour le moment, entre ceux qui préfèrent scripter en Java, ceux qui font des programmes avec fonctions et boucles en csh, et les 2 fondus de perl...).


 
(ils viennent de sortir la RC3 de Jython 2.2, et apparement il y a un mec qui bosse pour intégrer Jython à Spring pour créer des beans reloadables jesaispasquoi, le truc qu'on peut déjà faire avec Groovy et qui permet de pas avoir à redémarrer sa webapp dès qu'on touche un fichier, si ça peut te servir dans ton argument)
 
(ps:

Lam's a écrit :

ceux qui préfèrent scripter en Java


faut les abattre vite avant que l'infection s'étende au reste du troupal)
 
PPS: j'viens de screencaster la config du CMS de la boite sur ma machine locale (mon mac :o :o :o) pour pouvoir la refaire la prochaine fois... 5600s [:pingouino]
Va faloir que je bosse sur un script de config/install/deploy moi [:pingouino]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1596364
verdoux
And I'm still waiting
Posté le 06-08-2007 à 19:10:02  profilanswer
 

groovy, quel interêt par rappotrt à jython ?

n°1596365
Lam's
Profil: bas.
Posté le 06-08-2007 à 19:12:55  profilanswer
 

masklinn a écrit :

faut les abattre vite avant que l'infection s'étende au reste du troupal)


Bah c'est pour remplacer ce qu'un gars a fait en scriptant en C++ (et qui se fait en 5 lignes de code avec ElementTree).

n°1596368
masklinn
í dag viðrar vel til loftárása
Posté le 06-08-2007 à 19:25:53  profilanswer
 

verdoux a écrit :

groovy, quel interêt par rappotrt à jython ?


Chais pas, j'en ai jamais vu.

Lam's a écrit :


Bah c'est pour remplacer ce qu'un gars a fait en scriptant en C++ (et qui se fait en 5 lignes de code avec ElementTree).


 [:doudoule la banane]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1596369
drasche
Posté le 06-08-2007 à 19:27:05  profilanswer
 

nraynaud a écrit :

pendant que vous débattez de comment on concatène des chaînes en C/C++, ici on construit un générateur automatique de tests en java si ça vous ennuie pas [:moule_bite]


 
Et votre topic d'élite, il sert rien qu'à se branler et non plus à dégorger blabla@prog de vos discussions de javateux? [:moule_bite]


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°1596375
gizmo
Posté le 06-08-2007 à 19:49:42  profilanswer
 

nraynaud a écrit :


le StringBuilder la tendance. because StringBuffer c'est synchronisé.  
 
Et même souvent je gueule pour que les gens mettent des simples Writer+StringWriter à la place, mais l'IOException est un peu repoussante.


 
C'est drole, mais nous, on a une autre politique. Touujours utiliser les objets synchronisé, et le jour ou le client gueule a cause de la vitesse, faire du profiling pour voir ceux qui posent vraiment problème.

n°1596376
verdoux
And I'm still waiting
Posté le 06-08-2007 à 19:51:13  profilanswer
 

T'auras quand même du mal à le voir au profiler

n°1596377
gizmo
Posté le 06-08-2007 à 19:52:23  profilanswer
 

verdoux a écrit :

T'auras quand même du mal à le voir au profiler


Oh que non.

n°1596378
0x90
Posté le 06-08-2007 à 19:57:37  profilanswer
 

verdoux a écrit :

T'auras quand même du mal à le voir au profiler

 

Hardware problem sir !


Message édité par 0x90 le 06-08-2007 à 19:57:42

---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
n°1596379
nraynaud
lol
Posté le 06-08-2007 à 19:57:48  profilanswer
 

gizmo a écrit :


 
C'est drole, mais nous, on a une autre politique. Touujours utiliser les objets synchronisé, et le jour ou le client gueule a cause de la vitesse, faire du profiling pour voir ceux qui posent vraiment problème.


nous c'est l'inverse : vu que de toutes façons un objet synchronisé n'est jamais synchronisé aux endroit que tu veux (à part les nouveaux truc de java 5), on ne prend jamais un truc synchronisé et on synchronise nous-mêmes à la main des blocs de code plus grands.


---------------
trainoo.com, c'est fini
n°1596380
masklinn
í dag viðrar vel til loftárása
Posté le 06-08-2007 à 19:58:31  profilanswer
 

gizmo a écrit :

 

C'est drole, mais nous, on a une autre politique. Touujours utiliser les objets synchronisé, et le jour ou le client gueule a cause de la vitesse, faire du profiling pour voir ceux qui posent vraiment problème.


Sauf que si ton objet synchronisé synchronise là où ça n'a aucun intérêt, ça ne va pas trop t'aider. Bien au contraire, puisque ça va te donner un sens de sécurité ("mes objets sont synchronisés donc je risque rien) bien mal placé.

 

C'est d'ailleurs très précisément ce qu'impliquait nraynaud quand il a dit:

nraynaud a écrit :


j'pense même 100% du temps parceque même en multithread, se synchroniser là-dessus ça sent la morue de toutes façons.

 

edit: [:benou_grilled]

Message cité 1 fois
Message édité par masklinn le 06-08-2007 à 19:59:03

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1596381
gizmo
Posté le 06-08-2007 à 19:59:29  profilanswer
 

Dans les deux cas, l'important, c'est que ça tienne et que le nombre de bugs soit minime. :o

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  12167  12168  12169  ..  26189  26190  26191  26192  26193  26194

Aller à :
Ajouter une réponse
 

Sujets relatifs
Plus de sujets relatifs à : [blabla@hosto] Le topic des vieux


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR