C'est bizarre que ça ne fonctionne pas chez toi. Tu es certain de ne pas avoir fait d'erreur ?
LPSTR signifie "Long Pointer String", c'est parfaitement identique à un char*. C'est juste qu'un bonhomme a trouvé
utile de changer les noms des char*...
Jette un oeil à ceci :
8 "SAVE BOARD%S%_Z9saveBoardPc%Filename"
FUNCTION void saveBoard(char *fname){
Ca passe sans problème chez moi.
Si tu as définit ton tableau "type arr[32][24]", tu ne peux pas modifier ses dimensions. Par contre, si c'est un type **arr, tu peux utiliser realloc.
A vue de nez et sans tester...
Allocation :
type **arr;
arr = (type**)malloc(cols*sizeof(type*));
for (unsigned int i=0; i<cols; i++)
arr[i]=(type*)malloc(rows*sizeof(type));
Réallocation :
unsigned int ncols = cols + 10;
unsigned int nrows = rows - 5;
arr = (type**)realloc(arr, ncols*sizeof(type*));
for (unsigned int i=0; i<ncols; i++)
arr[i]=(type*)realloc(nrows*sizeof(type));
J'évite d'utiliser
new, j'ai rencontré des problèmes avec cette commande. Elle ne fonctionne pas lorsqu'on demande d'allouer beaucoup de mémoire (pour des traitements de données numériques, il m'arrive d'avoir à allouer près d'un giga). Malloc ne m'a jamais laissé tomber
The sleeper must awaken !