// poista_l.cpp // Aliohjelmia merkkijonojen käsittelyyn/vl-98 #include #include #include #include char *poista_lopusta(char *jono,int lkm) { int pit = strlen(jono); if ( lkm <= 0 ) return jono; if ( pit < lkm ) jono[0] = 0; else jono[pit-lkm] = 0; return jono; } string &poista_lopusta(string &jono,int lkm) { int pit = jono.length(); if ( lkm <= 0 ) return jono; if ( pit < lkm ) jono = ""; else jono.erase(pit-lkm,lkm); return jono; } int main(void) { char jono[20] = "Kissa istuu"; printf("Poiston jälkeen |%s|\n",poista_lopusta(jono,3)); printf("Poiston jälkeen |%s|\n",poista_lopusta(jono,5)); printf("Poiston jälkeen |%s|\n",poista_lopusta(jono,5)); printf("Poiston jälkeen |%s|\n",poista_lopusta(jono,5)); string st("Kissa istuu"); cout << "Poiston jälkeen |" << poista_lopusta(st,3) << "|" << endl; cout << "Poiston jälkeen |" << poista_lopusta(st,5) << "|" << endl; cout << "Poiston jälkeen |" << poista_lopusta(st,5) << "|" << endl; cout << "Poiston jälkeen |" << poista_lopusta(st,5) << "|" << endl; return 0; }