Witam,
chciałbym zamienić taką funkcję kopiującą tekst:
void kopiuj(char* co, char* doczego)
{
while(*(doczego++) = *(co++));
}
na taką, która w warunku pętli nie ma przypisania, jednak nie potrafię tego zrobić, ponieważ program oprócz tekstu kopiuje "śmieci" w niezapisane miejsca tablicy (przypuszczam, że pętla nie zatrzymuje się na znaku kończącym string).
Oto kod całego programu:
#include <iostream>
using namespace std;
//Funkcja, ktora dziala
//void kopiuj(char* co, char* doczego)
//{
// while(*(doczego++) = *(co++));
//}
//Moja proba przerobienia funkcji
void kopiuj(char* co, char* doczego)
{
while (*co) //petla powinna sie przerwac, gdy wskaznik pokaze na znak null(0) konczacy string
{
*doczego = *co;
doczego++;
co++;
}
}
void main()
{
char Tekst[] = "Napis";
char Kopia[100];
kopiuj(Tekst, Kopia);
cout << "Tekst: " << Tekst;
cout << "\nKopia tekstu: " << Kopia;
cout << system("pause>>null");
}
Proszę Was o pomoc i wskazanie mi błędów.