Ho un piccolo problema , mi servirebbe creare un semplice text editor che leggesse e salvasse (su file / in memoria / o dove zz volete) tot (+ sono meglio è) caratteri inseriti da tastiera.
Le opzioni sarebbero Esc = uscita / Enter=a capo / Backspace=Cancella.
Fino alla cancellazione delle righe su una sola schermata ci sono poi.....
Se avete qualche consiglio, tipo utilizzare altro al posto di una matrice 80X60......
Ve lo passo pronto per l'esecuzione...
#include <conio.h>
void main(void){
#define Maxrighe 60
unsigned char v[80][Maxrighe],x=0;
unsigned int y=0,r=-25;
for(;y<Maxrighe;y++)
for(;x<80;x++)
v[x][y]=0;
y=0; x=0;
do{
if(x==80){x=0;y++;}
if((y%25==0)&&(x==0)){clrscr(); r+=25;}
gotoxy(x+1,y+1-r);
v[x][y]=getch();
if ((v[x][y]!=27)&&(v[x][y]!=13)&&(v[x][y]!=8)){gotoxy(x+1,y+1-r); putch(v[x][y]); x++;}
if(v[x][y]==13){y++; x=0;}
if(v[x][y]==8)
{
if (x>0){putch(v[x][y]); v[x][y]=0; x--;}
else
{
if((y>0)&&(y%25!=0))//Se cancello nella stessa schermata
{
putch(v[x][y]);
for(char tem=0;tem<80;tem++)
v[tem][y]=0;
y--;
for(char rd=0;(v[rd][y]!=13)&&(rd<79);rd++);
x=rd;
if (x==79){gotoxy(80,y-r);putch(' ');}
}
if((y>0)&&(y%25==0))//Se cancello tutta la prima riga di una schermata diversa dalla prima
{
clrscr();
for(unsigned int j=(r-24);j<y;j++)
for(unsigned char k=0;k<79;k++)
if (v[k][j]>31){gotoxy(k,j);putch(v[k][j]); x=k;}
y=24; r-=25;
}
}
}
}while((v[x][y]!=27)&&(y<Maxrighe));
}
//Grazie!