"..makes pointer from an integer without a cast"

di il
2 risposte

"..makes pointer from an integer without a cast"

Ehi buon 2012 a tutti voi altri!
Allora, ho da poco iniziato il C e sto provando a creare da me i rudimenti di una libreria grafica.
Diciamo pure che lo sto facendo per esercizio, più che per il grezzo risultato che otterrò
Questo è l'header graphlib.h:

#include <stdio.h>
#define  LENROW  80
#define  LENCOL  25

/*Pulisce il pannello grafico e lo prepara per una nuova elaborazione*/
void erase(int matrice[LENCOL][LENROW])
   {
   int i=0;
   int j=0;
   for (j; j<LENCOL; j++)
      for (i; i<LENROW; i++)
         matrice[j][i] = 0;
   }

/*Stampa il pannello grafico a video*/
void press(int matrice[LENCOL][LENROW]) 
     { 
     int i=0;
     int j=0;
     for (j; j<LENCOL; j++)
        { 
        for (i; i<LENROW; i++)
           {
           printf("%c", matrice[j][i]);
           }
        printf("\n");
        }
     }

/* Crea un rettangolo sul pannello */
void draw_rect(int matrice[LENCOL][LENROW], int x, int y, int length, int height) 
   {
   int X, Y;
   ((x+length) < LENROW)?(X=x+length):(X=LENROW); /*Gestisce l'overflow nel caso in cui le misure escano dal pannello grafico 80x25 */
   ((y+height) < LENCOL)?(Y=y+height):(Y=LENCOL);
   for (y; y<Y; y++)
      for (x; x<X; x++)
         matrice[y][x] = '*';
   }
Per adesso ho implementato solo il rettangolo pieno
Questo invece è il sorgente .c:

#include <stdio.h>
#include <stdlib.h>
#include <graphlib.h>

int main() {
    int pad[LENCOL][LENROW];
    erase(pad[LENCOL][LENROW]);
    draw_rect(pad[LENCOL][LENROW], 0, 0, 4, 3);
    press(pad[LENCOL][LENROW]);
    system("PAUSE");
    return 0;
}
Gli errori che mi dà sono:
"In function 'main': [Warning] passing arg 1 of `erase' makes pointer from integer without a cast"
"In function 'main': [Warning] passing arg 1 of `press' makes pointer from integer without a cast"
"In function 'main': [Warning] passing arg 1 of `draw_rect' makes pointer from integer without a cast".

Mmmm...che cos'è questa storia? Io non ho creato nessun pointer

2 Risposte

Devi accedere o registrarti per scrivere nel forum
2 risposte