Przypisanie wartości tablicy bez gotowych funkcji

0

Witam, przygotowuję się właśnie na laboratoria z informatyki i mam pewien problem z następującymi zadaniami.

1.Mając do dyspozycji void wyslij_znak(char c), napisz funkcję wysyłającą napis o
prototypie void wyslij_tekst(char *t). Napis przekazujemy jako wskaźnik znakowy.
2.Przygotuj tablicę char odebrane_znaki[100] , w której będą gromadzone odebrane znaki
3.W funkcji void odebrano_znak(char c) rozpoznaj pojawienie się kodu klawisza ENTER.
Reakcją powinno być wyświetlenie wszystkich odebranych dotychczas znaków w postaci
napisu, a następnie wyczyszczenie tablicy znaków.

Zaznaczę ,że nie mogę korzystać z gotowych funkcji tylko z tych wyslij_znak i odebrano_znak

Jak na razie kod mój wygląda następująco:

#include <conio.h>

char odebrane_znaki[ 100 ];

void wyslij_znak( char c )
{
    _putch( c );
}

void wyslij_tekst( char * t )
{
    wyslij_znak( t );
}

void odebrano_znak( char c )
// Tutaj wiem ,że muszę przez pętlę zapisywać do tablicy zwiększając o jeden
// a na koncu tablice czyscic przypisujac wartosci pierwszej tablicy "0"
//ale nie wiem jak to zapisać
{
    char * b;
    int i;

    while( c == 13 )
    {

    }
}

int main()
{
    char c;
    do
    {
        c = getch();
        odebrano_znak( c );
    }
    while( c != 27 );

    return 0;
}

Mam największą trudność z tym aby zapisywały mi się znaki do tablicy. Pozdrawiam i proszę o wskazówki
p.s wiem ,że kod lekko ciulowy i nie za dużo zrobione.

sformatowanie kodu i dodanie brakującej klamerki - Furious Programming

0

W kodzie nie zrobiono kompletnie nic.

  1. void wyslij_znak(char c) { odebrano_znak(c); }
  2. void wyslij_tekst(char * t) - masz wysyłać znaki w pętle, to co teraz robisz raz się nie kompiluje, dwa - jak zamierzasz wysłać tonę bananów wysyłając tylko kilo bananów?
  3. void odebrano_znak(char c) { static char *p=odebrane_znaki; *p=0; if(c=='\n') puts(p=odebrane_znaki); else *(p++)=c; }

1 użytkowników online, w tym zalogowanych: 0, gości: 1