El paso por K & RI también un vistazo al siguiente código:C Array/Puntero problema
#define ALLOCSIZE 1000
static char allocbuf[MAXLINE];
static char *allocp = allocbuf
char *alloc(int n){
if (allocbuf+ALLOCSIZE-allocp>=n){
allocp+=n;
return allocp-n;
}
else { ... }
Me temo que mi pregunta es muy simple, pero no puedo conseguir mi cabeza alrededor de la "si "línea" ¿Qué valor está tomando allocbuf? Es una matriz de caracteres, ¿verdad? Miré hacia atrás en el material del libro, pero no ayudó. allocp apunta inicialmente al elemento zeroth de la matriz, ¿verdad?
¿Qué es ALLOCSIZE? también importa que allocbuf sea una constante (la dirección de la matriz) por lo que no puede tomar ningún otro valor. – deStrangis
Creo que falta algo en el código –
Lo siento, escribí la línea #define incorrecta ... edición –