A voir également:
- [C] erreur de compilation
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Erreur 1001 outlook - Accueil - Bureautique
- Erreur de lecture reconnecté en 3s - Forum TV & Vidéo
- Erreur 10016 epson - Forum Imprimante
10 réponses
jisisv
Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
934
29 avril 2003 à 18:02
29 avril 2003 à 18:02
Hi,
new c'est un mot réservé C++ non?
Utilise malloc....
Johan
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.
new c'est un mot réservé C++ non?
Utilise malloc....
Johan
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.
pas la peine de souligner langage c, surtout quand c en est pas.
USHORT: c est pas du C
nUnit: c est pas du C
new: c est pas du C
win++ stroke back!
USHORT: c est pas du C
nUnit: c est pas du C
new: c est pas du C
win++ stroke back!
Ok, merci pour les réponses ;))
Mais alors, vu que je n'y connais strictement rien en C++, quels sont les équivalents de USHORT, nUnit et new en language C ?
Ou si vous ne savez pas, à quoi ils correspondent ?
Merci d'avance.
Mais alors, vu que je n'y connais strictement rien en C++, quels sont les équivalents de USHORT, nUnit et new en language C ?
Ou si vous ne savez pas, à quoi ils correspondent ?
Merci d'avance.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ariock
Messages postés
125
Date d'inscription
dimanche 28 avril 2002
Statut
Membre
Dernière intervention
31 janvier 2005
5
30 avril 2003 à 09:20
30 avril 2003 à 09:20
USHORT, c'est "unsigned short" et je ne sais pas ou pouet a vu nUnit
Je suis un gaucher contrariant. C'est plus fort que moi,
il faut que j'emmerde les droitiers.
Je suis un gaucher contrariant. C'est plus fort que moi,
il faut que j'emmerde les droitiers.
Merci bien ariock,
ça m'est très utile.
Mais en revanche, nUnit ne cause pas de problème est n'est à priori pas un mot résèrvé C++... :!
Bref, encore merci.
:))
ça m'est très utile.
Mais en revanche, nUnit ne cause pas de problème est n'est à priori pas un mot résèrvé C++... :!
Bref, encore merci.
:))
Salut foobar47,
C'est claire "new" c'est en C++. En ce qui concerne "'USHORT", c'est un type defini dans ton soft, exemple :
typedef USHORT unsigned short;
Donc dans ton soft au lieu d'utiliser "unsigned short", tu utilises 'USHORT", de meme si tu en a assez de taper "unsigned char" dans ton code tu peux definir :
typedef UCHAR unsigned char;
voila ... donc je pense que "USHORT" est defini dans un fichier *.H, recherche "USHORT" sur ton disque dans les fichiers *.C ou *.CPP (parce qu'en fait ca ressemble plus a du C++ que du C, c'est claire !
A toi de jouer ...
C'est claire "new" c'est en C++. En ce qui concerne "'USHORT", c'est un type defini dans ton soft, exemple :
typedef USHORT unsigned short;
Donc dans ton soft au lieu d'utiliser "unsigned short", tu utilises 'USHORT", de meme si tu en a assez de taper "unsigned char" dans ton code tu peux definir :
typedef UCHAR unsigned char;
voila ... donc je pense que "USHORT" est defini dans un fichier *.H, recherche "USHORT" sur ton disque dans les fichiers *.C ou *.CPP (parce qu'en fait ca ressemble plus a du C++ que du C, c'est claire !
A toi de jouer ...
batmat
Messages postés
1871
Date d'inscription
jeudi 1 novembre 2001
Statut
Membre
Dernière intervention
9 janvier 2008
114
30 avril 2003 à 10:25
30 avril 2003 à 10:25
Tu devrais ptete commencer par vérifier et nous dire si ton compilo est un compilo C ou C++... Ca serait pas mal que toi aussi tu saches en quel langage (et pas language, ça c'est la version anglaise ;-) )tu développes, non ?
@++
Vous hésitez entre Linux et Windows?
Vous voulez dépenser du temps ou de l'argent ?
@++
Vous hésitez entre Linux et Windows?
Vous voulez dépenser du temps ou de l'argent ?
En ce qui concerne "new", malloc est un équivalent un peu particulier car tu ne doit pas oublier de liberer la mémoire lorque tu as fini de l'utiliser en faisant un "free".
De plus pour utiliser malloc il faut lui spécifier la taille de l'espace mémoire a réservé, par exemple :
malloc(sizeof(USHORT)); /*dans le cas ou USHORT est bien un typedef*/
Aller ciao!
De plus pour utiliser malloc il faut lui spécifier la taille de l'espace mémoire a réservé, par exemple :
malloc(sizeof(USHORT)); /*dans le cas ou USHORT est bien un typedef*/
Aller ciao!
Salut,
merci pour vos réponses,
en effet, la source que j'ai récuperée est en C++, de plus elle faisait appel à une DLL.
Pour faire appel à une DLL, en C, savez comment proceder? car je l'ai fait, mais je ne suis pas sur de mon coups :
#define DLLIMPORT extern "C" __declspec(dllimport)
#define FUNCTIONFLAGS __stdcall
int FUNCTIONFLAGS cviTestCard(short nDeviceNumber, short nBoardType, short nGain);
int FUNCTIONFLAGS cviSetIntEx(int const nBase, int const nPixelNumber, long const lTime, int nDeviceNumber, int nChannel, int nGain);
int FUNCTIONFLAGS cviSetInt(int const nTriggerMode, long const lTime);
mon compilateur me renvoie une erreur du type:
Redefinition de la macro DLLIMPORT
En ce qui le concerne, mon compilateur, c'est le compilateur integré au logiciel LabWindows, pour ceux qui connaissent, et à priori, il ne gère que le C.
Pour le new, je l'ai remplacé par malloc:
PixArray =(unsigned short*) malloc(nPixelNo * sizeof(int*)); en C
à la place de :
PixArray = new USHORT[nPixelNo] en C++
j'ai pris soin de liberer la mémoire comme ceci:
free(PixArray);
qui remplace le delete.
Cependant, j'ai l'erreur suivante lors de l'execution:
Pointer arithmetic involving pointer to freed memory
Si vous avez des idées ou des éléments de réponses, merci.
Merci encore pour vos réponses.
Linux is like sex, it's better when it's free.
C'est ceux qui s'en servent pas qui en disent du mal.
merci pour vos réponses,
en effet, la source que j'ai récuperée est en C++, de plus elle faisait appel à une DLL.
Pour faire appel à une DLL, en C, savez comment proceder? car je l'ai fait, mais je ne suis pas sur de mon coups :
#define DLLIMPORT extern "C" __declspec(dllimport)
#define FUNCTIONFLAGS __stdcall
int FUNCTIONFLAGS cviTestCard(short nDeviceNumber, short nBoardType, short nGain);
int FUNCTIONFLAGS cviSetIntEx(int const nBase, int const nPixelNumber, long const lTime, int nDeviceNumber, int nChannel, int nGain);
int FUNCTIONFLAGS cviSetInt(int const nTriggerMode, long const lTime);
mon compilateur me renvoie une erreur du type:
Redefinition de la macro DLLIMPORT
En ce qui le concerne, mon compilateur, c'est le compilateur integré au logiciel LabWindows, pour ceux qui connaissent, et à priori, il ne gère que le C.
Pour le new, je l'ai remplacé par malloc:
PixArray =(unsigned short*) malloc(nPixelNo * sizeof(int*)); en C
à la place de :
PixArray = new USHORT[nPixelNo] en C++
j'ai pris soin de liberer la mémoire comme ceci:
free(PixArray);
qui remplace le delete.
Cependant, j'ai l'erreur suivante lors de l'execution:
Pointer arithmetic involving pointer to freed memory
Si vous avez des idées ou des éléments de réponses, merci.
Merci encore pour vos réponses.
Linux is like sex, it's better when it's free.
C'est ceux qui s'en servent pas qui en disent du mal.