Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

pomoc oko strcpy i char

[es] :: C/C++ programiranje :: C/C++ za početnike :: pomoc oko strcpy i char

[ Pregleda: 2413 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Neznalica_sa_ugla
split

Član broj: 83282
Poruke: 390
*.adsl.net.t-com.hr.



Profil

icon pomoc oko strcpy i char02.09.2007. u 23:40 - pre 151 meseci
Ipak sam ja za staro gvodje !!! Ako ko moze da pimogne ???

recimo imam :
char *s1;
char *s2 ;
char s3[40]= "Dobro jutro " ;
s1="mala Kato";
s2=" Sretni Lacky" ;

char *s3 ;
char *s4;
char *s5;

e i sada treba u :
s3 sastavit s3 + s1 ( Dobro jutro Mala Kato ");
s4 sastaviti s3 + s2 (Dobro jutro sretni lacky);
s5 sastavi s1 i s2 mala kata sretni Lacky ;

Moze se koristiti srtcpy , srtcat , i s3 = ...
Izgubi sam cijelo popoden s ovim , ni Blanku nisam gledao .
puno HVALA za pomoc ...














 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4867
*.tekostolac.co.yu.

Jabber: xfiles@elitesecurity.org


+622 Profil

icon Re: pomoc oko strcpy i char03.09.2007. u 13:29 - pre 151 meseci
Izrazi tipa:
Code:

char *tekst;
tekst = "Neki tekst";

... ma koliko se kompajlirali i radili na primerima, opasni su, pogotovo što si tu planirao i spajanje.

Umesto toga koristi:
Code:

/* nacin 1 */
char tekst1[] = "Neki tekst1";

/* nacin 2 */
char tekst2[12] = "Neki tekst2";

/* nacin 3 */
char tekst3[] = { 'N', 'e', 'k', 'i', ' ', 't', 'e', 'k', 's', 't', '3', '\0' };

/* nacin 4 */
char tekst4[12] = { 'N', 'e', 'k', 'i', ' ', 't', 'e', 'k', 's', 't', '4', '\0' };

/* nacin 5 */
char *tekst5 = "Neki tekst5";

/* nacin 6 */
char tekst6[12];
strcpy( tekst6, "Neki tekst6" );

/* nacin 7 */
char *tekst7;
tekst7 = (char*)malloc( 12 );
if ( tekst7 )
{
   strcpy( tekst7, "Neki tekst7" );
   /* ovde uradi nesto sa tekstom, pre free */
}
free( tekst7 );

Dakle, u gornjim primerima inicijalizacija polja se vrši ili direktno sa deklaracijom, ili se kopira u prethodno *rezervisan* prostor.


Što se tiče spajanja, nema tu ništa spektakularno:
Code:

char odrediste[100] = "tekst1";
char izvor[100] = "tekst2";

strcat( odrediste, izvor );

printf( "%s\n", odrediste ); /* odrediste == tekst1tekst2 */

... naravno, tvoja je odgovornost da paziš da li je odrediste dovoljno prostrano (100) za oba stringa.
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: pomoc oko strcpy i char

[ Pregleda: 2413 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.