Probleme de déclaration [C] - Programmation
Marsh Posté le 08-01-2002 à 17:47:50
int N = 50;
double* Tab = (double*)malloc(N * sizeof(double));
Marsh Posté le 08-01-2002 à 18:27:29
pas oblige de caster.
par contre ne pas oublier d'inclure
stdlib.h
(ou cstdlib si tu programmes en C++)
LEGREG
Marsh Posté le 08-01-2002 à 18:30:13
g un doute sur le fait qu'il fait pas caster...
en tout k mon compilo il me jete ca a la gueule si je le fait pas
Marsh Posté le 08-01-2002 à 19:01:55
tu compiles en c++?
cast => non obligatoire et parfois deconseille par certaines personnes en C ANSI (car cela peut cacher une erreur)
=> obligatoire de caster explicitement un pointeur en type pointeur non void en C++ standard
c'est a dire legal de ne pas caster de double* en void*
mais pas de double* en char*
et pas de void* en double* (ou char*)
(la semantique du cast est un peu plus riche
en C++)
LEGREG
Marsh Posté le 08-01-2002 à 19:19:21
par ailleurs, malloc est utilise
assez rarement en C++.
ca arrive quand on recupere du code
mais en general il est bon
de ne pas juste copier coller
du code de C en C++
parce que de nombreuses petites
choses changent.
A+
LEGREG
Marsh Posté le 08-01-2002 à 17:44:03
jai besoin de déclarer un tableau de double
je suis habitué a programmer en c++ il il suffit d'écrire
int N = 50;
double* Tab = new double[N];
Le problème est que pour une application je dois programmer en C et je ne sais pas comment déclarer ce tableau pour men servir.
Je sais qu'il existe malloc et calloc mais je ne sais pas les utiliser .
Quelqu'un pourrait-il m'expliquer comment déclarer un tableau de double ?