Spojení 2 řetězců – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Spojení 2 řetězců – C / C++ – Fórum – Programujte.comSpojení 2 řetězců – C / C++ – Fórum – Programujte.com

 

Michal Zima0
Super člen
10. 3. 2007   #1
-
0
-

Mám celkem podivný problém - vizte následující kód.

#include <string.h>


int main () {
char *s1 = "ahoj";
char *s2 = "nazdar";

strcat (s1, s2);

return 0;
}

Program se bez problémů zkompiluje, ale po spuštění na mě vybafne s "Segmentation fault". Napsal jsem ho přesně podle knížky, z které se učím, zkoušel jsem i různé kombinace parametrů fce, ale nic nepomohlo. Původně jsem to měl v rámci většího programu, ale protože jsem si nevěděl rady, tak jsem si to takhle vyseparoval.

Vidí v mém kódu někdo chybu? Pokud ne, je to na pováženou. :-) V každém případě ty řetězce potřebuji nějakým způsobem spojit, ať už to bude způsob jakýkoliv (vemu za vděk i C++ kódem). Mockrát děkuji.

Nahlásit jako SPAM
IP: ...–
Mandriva Linux 2007.1, KDE 3.5, Opera 9.22, vim 7.0...
Martin0
Návštěvník
10. 3. 2007   #2
-
0
-

To xHire: segmentation fault nastane kdyz se program snazi pristoupit k pameti, ke ktere pristup nema. A podle http://www.cplusplus.com/reference/clibrary/cstring/strcat.html bych tipoval, ze to bude proto, ze do retezce s1 o delce 5 znaku se snazis vecpat retezec o delce 11 znaku (s1 + s2). Takze tady bude asi ta chyba.. Bud si alokuj vice pameti pro s1, nebo pouzij c++ string, ktery se umi sam "nafouknout".

Nahlásit jako SPAM
IP: ...–
Michal Zima0
Super člen
10. 3. 2007   #3
-
0
-

Díky, tak jsem to nakonec udělal - pomocí stringu.

Nahlásit jako SPAM
IP: ...–
Mandriva Linux 2007.1, KDE 3.5, Opera 9.22, vim 7.0...
shodan
~ Anonymní uživatel
1 příspěvek
10. 3. 2007   #4
-
0
-

Program se bez problémů zkompiluje, ale po spuštění na mě vybafne s "Segmentation fault". Napsal jsem ho přesně podle knížky, z které se učím, zkoušel jsem i různé kombinace parametrů fce, ale nic nepomohlo.


Jestli se tento kus kódu opravdu vyskytuje v nějaké knížce o programování, tak bude asi nejlepší ji rovnou zahodit

Nahlásit jako SPAM
IP: ...–
Peter D.0
Expert
10. 3. 2007   #5
-
0
-

aj v dobrých knihách sú chyby. To čo si napisal mi pride také "zbytočné".

Nahlásit jako SPAM
IP: ...–
Program nemusi fungovat rychle, staci ze funguje dostatecne rychle.
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 53 hostů

Podobná vlákna

Porovnání řetězců — založil Bananovnik

Porovnani retezcu? — založil TuTi_fruTi

Porovnání řetězců — založil thifferx

Porovnání řetezců — založil pazdy

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý