![]() |
Mòdul
6
![]() |
Fonaments de
Programació. Llenguatge C/C++![]() |
Pràctica ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |
Pràctica
d'ampliació ![]() |
Reemplaçar part d'una cadena per una altra
En aquesta pràctica implementarem una útil funció de reemplaçament d'una part d'una cadena per una altra.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
Desenvolupament de la pràctica
Definiu un projecte nou anomenat m6p07 i afegiu-li un arxiu de font C/C++ anomenat m6p07.cpp. Escriviu el següent codi:
Explicació del programa En aquest programa s'implementa la funció reempl que té el protocol: char *reempl(char *text, char *subcadena,int n) És, per tant, una funció que retorna una cadena (la mateixa cadena text) i reemplaça caràcters de la cadena text per la cadena subcadena a partir de la posició n. Per exemple: si text conté la cadena "Això és una prova" i subcadena conté "dos". La funció reempl(text,subcadena,8) canviarà el contingut de text per: "Això és dos prova".
La línia de codi que fa aquest reemplaçament és:
on p és un punter que apunta a la primera posició del text que s'ha de reemplaçar. S'ha d'observar que aquesta funció no fa comprovació de límits. Si la subcadena o el valor de n són massa grans es pot sobreescriure part de la memòria no reservada per la cadena text. |