Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

conversion long en string

24 réponses
Avatar
john.ambou
Bonjour,

Je voudrais convertir un long en string afin de pouvoir ensuite
l'envoyer =E0 l'aide de socket.
Connaissez vous un moyen de faire cela ?

10 réponses

1 2 3
Avatar
jean-marc
"Aski" a écrit dans le message de
news:
Hello jm,



Hello,

Tiens, un nouveau pseudo. ;-)



C'est quand je poste depuis le boulot :-)

Tu as savamment écrit :


Merci de ces informations.
C'est la ressemblance entre Cstr et le type CString qui m'avait fait


poser
la question.



Juste pour info, CString c'est une classe C++. En C, pas de CString,
même pas de type "chaîne de caractères" :-))

Pour bien sentir toutes les joies du VB:

' Hello World VB
Dim s as String
s = "Hello, World"
debug.print s


Le même en C:

/* Hello world en C */
#include<stdio.h>
#include<stdlib.h>

#define SIZE_STRING 256

int main(void)
{
char *s = NULL;
int ret = 0;

s = malloc(SIZE_STRING);
if(s)
{
strcpy(s, "Hello, World")
printf("%sn", s);
free(s);
ret = EXIT_SUCCESS;
}
else
{
printf("erreur allocation mémoiren");
ret = EXIT_FAILURE;
}
return ret;
}



--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;
Avatar
Aski
Hello jean-marc,

Tu as savamment écrit :

Pour bien sentir toutes les joies du VB:



Merci pour cette explication très claire.
C'est justement cela ce qui m'a fait abandonner l'idée de poursuivre mon
projet de programmer en C ou associé.
De plus, le Visual C++ est très complexe à mettre en oeuvre. Il est dommage
que ce ne soit pas la même équipe que celle de VB 6 qui ait travaillé sur le
projet.
Quant au VB 2005, j'ai réussi difficilement à traduire un projet VB 6 en VB
2005 et il tourne 2 ou 3 fois plus lentement. J'ai été dégoutté... ;-(

Henri
Avatar
jean-marc
"Aski" a écrit dans le message de
news:
Hello jean-marc,



Hello,

Tu as savamment écrit :

> Pour bien sentir toutes les joies du VB:
>
Merci pour cette explication très claire.



De rien :-)

C'est justement cela ce qui m'a fait abandonner l'idée de poursuivre


mon
projet de programmer en C ou associé.



Je ne parlerais pas de C++, je ne pratique pas beaucoup. En revanche, je
peux
parler de C que je connais très bien pour pratiquer tous les jours
depuis
plus de 15 ans.

En fait, on ne peut pas comparer C et VB, car ils sont par essence même
incomparables. C'est comme comparer une Ferrari et un char d'assaut
AMX30:
- La Ferrari est rapide, accélère très fort, mais n'est pas vraiment
adaptée pour entrer dans une zone de combat...
- A l'inverse, un AMX30 est plus lent, mais il a de bonnes capacités
de survie dans un milieu hostile, des capacités offensives, etc.

=> Ces 2 véhicules ne servent pas à la même chose.

Il en est de même pour C et VB: Ce sont 2 supers langages, ils ne sont
tout
simplement pas fait pour faire les mêmes choses, ils ont des buts et des
utilisations différentes:

Exemples:
- programme à faire vite fait, avec une IHM => VB
- programme nécessitant des perfs élevées, sans IHM => C
- manipulation de chaines de caractères, sans contraintes de perfs => VB
- calcul, opérations en mémoires, traitements lourds => C
- besoin de portabilité => C
- interactions avec Windows, trucs réseaux, mails, etc. => VB
- etc.

Avec des compromis possibles:
- Besoin d'une belle IHM, mais sections critiques dans le programme pour
un ou 2 traitements particuliers, demandant des perfs élevées => mélange
C et VB, codage des parties critiques en C, rélaisation de une ou
plusieurs
DLL, appels depuis VB. J'ai souvent fait cela et fait la démonstration
ici même de l'intérêt de faire comme cela.

Autre exemple: Un programme avec des traitements mathématiques lourds et
complexes (opérations matricielles, etc.) => A moins de trouver une
bonne
librairie en C, je n'hésite pas, je remonte mes manches et je le fais en
Fortran, qui a tout ce qu'il faut pour cela.

De plus, le Visual C++ est très complexe à mettre en oeuvre. Il est


dommage
que ce ne soit pas la même équipe que celle de VB 6 qui ait travaillé


sur le
projet.



Je ne dirais pas ça. C'est plus compliqué, c'est vrai, mais c'est normal
car
l'environnement est aussi plus riche. Par exemple, rien que pour bien
régler
les options de compilation (je ne parle même pas de l'éditeur de liens),
l'onglet
contient plus de choix, boutons, etc. qure l'IDE de VB en entier.

--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;
Avatar
Aski
Hello jean-marc,

Tu as savamment écrit :

Tien, tu ne bosses pas aujourd'hui ? ;-)

Je ne parlerais pas de C++, je ne pratique pas beaucoup. En revanche,
je peux
parler de C que je connais très bien pour pratiquer tous les jours
depuis plus de 15 ans.

En fait, on ne peut pas comparer C et VB, car ils sont par essence
même incomparables. C'est comme comparer une Ferrari et un char
d'assaut AMX30:
- La Ferrari est rapide, accélère très fort, mais n'est pas vraiment
adaptée pour entrer dans une zone de combat...



J'ai une petite préférence pour la Ferrari, bien qu'elle coûte moins cher.
lol

Exemples:
- programme à faire vite fait, avec une IHM => VB



C'est le genre de programme que j'écris habituellement.

- programme nécessitant des perfs élevées, sans IHM => C



Je n'ai encore jamais eu à faire depuis que j'ai quitté le Pascal sous DOS.

- manipulation de chaines de caractères, sans contraintes de perfs =>
VB



Je manipule souvent des chaînes et le programme que j'ai traduit avec
déception était fortement axé sur la manipulation des chaînes.

- calcul, opérations en mémoires, traitements lourds => C
- besoin de portabilité => C



OK

- interactions avec Windows, trucs réseaux, mails, etc. => VB
- etc.

Avec des compromis possibles:
- Besoin d'une belle IHM, mais sections critiques dans le programme
pour un ou 2 traitements particuliers, demandant des perfs élevées =>
mélange C et VB, codage des parties critiques en C, rélaisation de
une ou plusieurs
DLL, appels depuis VB. J'ai souvent fait cela et fait la démonstration
ici même de l'intérêt de faire comme cela.



C'est effectivement une solution intéressante.

Autre exemple: Un programme avec des traitements mathématiques lourds
et complexes (opérations matricielles, etc.) => A moins de trouver une
bonne
librairie en C, je n'hésite pas, je remonte mes manches et je le fais
en Fortran, qui a tout ce qu'il faut pour cela.



Je n'ai jamais eu à faire de calcul matriciel depuis ma sortie de l'école.

De plus, le Visual C++ est très complexe à mettre en oeuvre. Il est
dommage que ce ne soit pas la même équipe que celle de VB 6 qui ait
travaillé sur le projet.



Je ne dirais pas ça. C'est plus compliqué, c'est vrai, mais c'est
normal car
l'environnement est aussi plus riche. Par exemple, rien que pour bien
régler
les options de compilation (je ne parle même pas de l'éditeur de
liens), l'onglet
contient plus de choix, boutons, etc. qure l'IDE de VB en entier.



D'accord, mais l'éditeur conçu par Microsoft est très complexe ..
Avatar
Patrice Henrio
En fait dans la très grande majorité des cas de développement personnel pour
le plaisir, VB6 est le grand gagnant. Il est déjà très riche et quand on
ajoute la possibilité de dll en C c'est Byzance (merci Jean-Marc, grâce à
toi j'ai pu m'y mettre et ça marche du tonnerre)

J'hésitais à me mettre à Visual 2005 mais mes premières approches et ce
qu'en dit ASKI me laisse perplexe quand à cette migration.
Avatar
jean-marc
"Patrice Henrio" a écrit dans le message de
news:

Hello Patrice,

En fait dans la très grande majorité des cas de développement


personnel pour
le plaisir, VB6 est le grand gagnant. Il est déjà très riche et quand


on
ajoute la possibilité de dll en C c'est Byzance (merci Jean-Marc,


grâce à
toi j'ai pu m'y mettre et ça marche du tonnerre)



Avec plaisir :-)

VB a été conçu au départ comme un "RAD" (Rapid Application
Devellopment),
et on peut dire que la mission est accomplie. Il est parfait pour le
développement perso, et convient aussi tout à fait pour toute une gamme
de développement plus professionnel.

A la boîte, on l'utilise beaucoup pour créer des mini programmes (genre
qu'on écrit en 10 minutes et qui ne servent qu'une fois), mais aussi
pour
créer des outils à usage interne, et même pour tester rapidement la
validité de tel ou tel algo. Je dois avoir plus ou moins 200 programmes
VB dans la boite à outils de la société, dont une dizaine sont utilisés
journellement par 3 ou 4 personnes.

Nos interfaces graphiques étaient même écrites en VB (les versions
commerciales) jusqu'au début 2002, et personne ne s'en est jamais
plaint :-) Puis le temps à fait son oeuvre et tout cela a été
réécrit en Java et transformé en "Web based". Les parties processing
de nos applis sont elles toujours en C, bien sur.

--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;
Avatar
Aski
Hello Patrice Henrio,

Tu as savamment écrit :

En fait dans la très grande majorité des cas de développement
personnel pour le plaisir, VB6 est le grand gagnant. Il est déjà très
riche et quand on ajoute la possibilité de dll en C c'est Byzance
(merci Jean-Marc, grâce à toi j'ai pu m'y mettre et ça marche du
tonnerre)
J'hésitais à me mettre à Visual 2005 mais mes premières approches et
ce qu'en dit ASKI me laisse perplexe quand à cette migration.



Peut-être d'autres expériences sont elles meilleures que la mienne.
Je pense avec toi que je vais continuer à utiliser mon 'vieux' VB et que, si
nécessaire je ferai appel au C, mais certainement pas à Visual C++.
J'aimerais que jm (s'il est au boulot) ou Jean-marc (s'il est chez lui) nous
conseille quant au C pur sans IHM. :-)
--
Cordialement
Aski
Avatar
jean-marc
"Aski" a écrit dans le message de
news:

Hello,


Tu as savamment écrit :
Peut-être d'autres expériences sont elles meilleures que la mienne.
Je pense avec toi que je vais continuer à utiliser mon 'vieux' VB et


que, si
nécessaire je ferai appel au C, mais certainement pas à Visual C++.
J'aimerais que jm (s'il est au boulot) ou Jean-marc (s'il est chez


lui)

LOL !

nous
conseille quant au C pur sans IHM. :-)



Ce sera avec joie, mais quels genre de conseils?

--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;
Avatar
Aski
Hello jean-marc,

Tu as savamment écrit :

nous
conseille quant au C pur sans IHM. :-)



Ce sera avec joie, mais quels genre de conseils?



Pardon, je parlais de l'éditeur, compilateur.
Avatar
Patrice Henrio
Pour ma part je dispose de visual studio et d'un gros bouquin sur visual C++
(Visual C++
de chez Eyrolles)

Avec les indications de jean-marc je n'ai eu aucune difficulté à faire des
dll pour que la partie calcul de mon programme Vb se fasse en C.

Pour être plus précis, je dispose d'un tableau de 60000 double qui sont les
coordonnées terrestres de 30000 points et je dois recalculer à chaque clic
sur une carte les coordonnées de ces points projetés sur un plan tangent à
la surface du globe (le point de tangence changeant régulièrement) et je ne
parle même pas de ramener tout ce calcul à la dimension de l'écran dont
l'origine n'est pas au centre.

J'avais déjà signalé à l'époque que le gain de temps par le passage au C
était des 2/3, c'est à dire que là où le processeur était utilisé 15
secondes, il ne l'était plus que 5.


Par contre j'ai essayé de me mettre à java et j'ai l'impression de perdre au
niveau du temps d'exécution : est-ce une illusion ou une mauvaise méthode ?

Peut-on intégrer des dll en C dans du code java que cela reste portable sur
toute plate-forme ?

Bon week-end à tous.


"Aski" a écrit dans le message de news:

Hello jean-marc,

Tu as savamment écrit :

nous
conseille quant au C pur sans IHM. :-)



Ce sera avec joie, mais quels genre de conseils?



Pardon, je parlais de l'éditeur, compilateur.



1 2 3