Unost teksta, c++

1

Unost teksta, c++

offline
  • Pridružio: 18 Jan 2013
  • Poruke: 13

Pozdrav, interesuje me na koji nacin mogu unijeti neki tekst sa razmacima i da ga smjestim u neki dinamicki string, a da to nije pomocu getline funkcije.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 14 Jul 2012
  • Poruke: 51

На пример p је адреса низа знакова чија се дужина фиксира током извршавања програма,
па дакле уместо getline() можеш и са gets().
char niz[некиброј]; gets(niz); char *p = new char[strlen(niz)+1]; strcpy(p,niz);
Или детаљније са командне линије (овде се губе размаци):
#include <stdio.h> #include <string.h> int main (int argc, char** argv) {     int i, s=0;     for(i=1;i<argc;i++) s=s+strlen(argv[i]);     char *p = new char[s+1];     strcpy(p,argv[1]);     for(i=2;i<argc;i++) strcat(p,argv[i]);     puts(p);     return 0; }



offline
  • Pridružio: 18 Jan 2013
  • Poruke: 13

Znam za ovaj nacin, tako sam radio u C-u , ali meni treba u C++ koristenjem biblioteke <iostream.h>

offline
  • Pridružio: 19 Maj 2011
  • Poruke: 297

Zasto ne moze getline funkcija?

offline
  • Pridružio: 18 Jan 2013
  • Poruke: 13

Profesor nam nije dao da koristimo tu funkciju, a u pitanju je bio kolokvijum.
.
Pa nisam nikako imao ideju kako da unesem string a da to nije pomocu getline funkcije.

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Uzevši u obzir da je u pitanju C++, verovatno je hteo da koristite cin i cout + operatore >> i <<.

offline
  • Pridružio: 14 Jul 2012
  • Poruke: 51

Мислим да је овако...
#include <cstdlib> #include <iostream> #include <string> using namespace std; int main(int argc, char *argv[]) {     string stringic,str;     system("chcp 1251"); //Windows     while(1){             cin>>stringic;             if (stringic.compare("q") == 0) break;             str=str+stringic+" ";             }     cout<<str<<"\n";     system("pause");     return EXIT_SUCCESS; }

offline
  • Pridružio: 18 Jan 2013
  • Poruke: 13

Napisano: 05 Dec 2013 18:16

Sigurno bi trebala biti neka kombinacija sa preklopljenim operatorom << i sa preklopljenim operatorom += ili +

Dopuna: 05 Dec 2013 19:34

vladasimovic ::Мислим да је овако...
#include <cstdlib> #include <iostream> #include <string> using namespace std; int main(int argc, char *argv[]) {     string stringic,str;     system("chcp 1251"); //Windows     while(1){             cin>>stringic;             if (stringic.compare("q") == 0) break;             str=str+stringic+" ";             }     cout<<str<<"\n";     system("pause");     return EXIT_SUCCESS; }


Sve je super samo sto ja nisam smio da koristim funkcije iz <string.h>. Pise u napomeni.

offline
  • Pridružio: 19 Maj 2011
  • Poruke: 297

Kad vec koristite cin zasto ne i njegove metode?

const std::size_t maxSize = 500; char* sadrzaj = new char[maxSize]; // posto mora "dinamicki string", mada nije nesto "dinamican" std::cin.getline(sadrzaj, maxSize);

Po meni je idiotizam unositi ovo sa sift operatorm >>

Ne znam sta ste konkretno imalu u programu da ucite? Kako ste inace unosili linije sa whitespace-ovima?

offline
  • Pridružio: 26 Avg 2010
  • Poruke: 10622
  • Gde živiš: Hypnos Control Room, Tokyo Metropolitan Government Building

Brđo je baš zao kada ne da da se koristi klasa String, zar ne? Mr. Green
Ovdje ti ne bi trebao biti problem da umjesto klase String koristiš niz znakova.

Ko je trenutno na forumu
 

Ukupno su 1348 korisnika na forumu :: 35 registrovanih, 12 sakrivenih i 1301 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: ajo baba, amaterSRB, Andrija357, Asparagus, bladesu, BORUTUS, debeli, Dimitrije Paunovic, Dimitrise93, Dorcolac, draganl, Georgius, hyla, jackreacher011011, Karla, kihot, kuntalo, kybonacci, Leonov, Lieutenant, Mi lao shu, MikeHammer, milenko crazy north, milos.cbr, MilosKop, nemkea71, nextyamb, procesor, royst33, srbijaiznadsvega, Stanlio, stegonosa, Trpe Grozni, vasa.93, W123