Šta je novo?

string.h problem

  • Začetnik teme CRUISER
  • Datum pokretanja
C

CRUISER

Guest
Uceci C++ uz pomoc raznih literatura naisao sam na jedan problem. Kada prekucam doslovno delove koda iz "C++ Izvornika" i iz "Osnovi jezika C++" by Lippman kompajler mi pravi problem tj. nalazi gresku. Napominjem da je "C++ izvornik" pisan po ANSI/ISO standardu (valjda bi sve distribucije C++ -a morale da ga postuju) i da Lippman u predgovoru knjige "Osnovi jezika C++" pise da je izvorni kod u knjizi sa uspehom kompajlirao u Microsoft-ovom (Visual 6.0) C++ kompajleru.
Da vas ne uplicem u problematiku programa koji pravim napisacu vam primer koji sam pokusao da kompajliram u Borland-ovom Turbo C++ 3.0 i u Visual C++ 6.0 console application (empty project...) i greske koje mi prijavi:

#include <string.h>
void main()
{
string ime;
}


Turbo C++ 3.0 :
Error test.cpp 4: Undefined symbol 'string'

Visual C++ 6.0:
d:\projekti\visual c++\test\test.cpp(4) : error C2065: 'string' : undeclared identifier
d:\projekti\visual c++\test\test.cpp(4) : error C2146: syntax error : missing ';' before identifier 'ime'
d:\projekti\visual c++\test\test.cpp(4) : error C2065: 'ime' : undeclared identifier
Error executing cl.exe.

Unapred zahvalan.
 
CRUISER je napisao(la):
...
#include <string.h>
void main()
{
string ime;
}
...

Probaj ovako:

[code:1]
#include <string>

void main()
{
using namespace std;
string ime;
}
[/code:1]
 
silverglider je napisao(la):
Probaj ovako:

[code:1]
#include <string>

void main()
{
using namespace std;
string ime;
}
[/code:1]

Pre svega Hvala!!!
Radi u Visual C++ 6.0 ali mi u Turbo C++ 3.0 prijavljuje opet greske:
Kada uradim : #include <string.h> i ostalo prijavi :

Error test.cpp 4: Undefined symbol 'using'
Error test.cpp 4: Statement missing ;
Error test.cpp 5: Undefined symbol 'string'
Error test.cpp 5: Statement missing ;

A kada : #include <string> onda prijavi:

Error test.cpp 1: Unable to open included file 'STRING'
Error test.cpp 4: Undefined symbol 'using'
Error test.cpp 4: Statement missing ;
Error test.cpp 5: Undefined symbol 'string'
Error test.cpp 5: Statement missing ;




I molio bih Vas ako mozete bar u kratko da mi objasnite "using namespace std;" znam otprilike da se to koristi da ne bi doslo do sukoba imena ali mi to nije bas najjasnije.
HVALA!
 
Najbolje je da predjesh knjigu , polako nemoj da zurish:)
ako ti posle ne bude bilo jasno , pitaj

using ti uopshte u pocetku nije bitno , skoncentrishi se za sad na logiku programiranja
 
Sve implementacije C++ jezika bi trebale da budu kompatibilne sa ANSI/ISO specifikacijom, ali vodi racuna da su se i te specifikacije menjale vremenom, tj. da ne postoji samo jedna ANSI specifikacija. TurboC++ 3.0 je proizvod sa pocetka '90-tih, dakle, od pre vise od 10 godina i time je malo matoriji od poslednje ANSI standardizacije koja je trajala '96-'98. Samim tim, pored stavljanja string klasa u STL, TurboC++ 3.0 propusta i neke druge detalje u vezi character tipova, kao sto je nedostatak ugradjenog wchar_t tipa, uvodjenje locale biblioteke, sredjivanje iostream biblioteke pod STL-om i slicno.

TurboC++ 3.0 jeste fin mali alat za ucenje osnova C/C++ sintakse i pocetne stvari, ali cim dodjes do RTTI, STL i drugih naprednijih pojmova stadardizovanih poslednjih godina, treba ti ipak nesto "svezije". Ukoliko ti treba nesto bas za suve console projekte, GNU C++ je dobar, svez, kompatibilan i uvek aktuelan.
 
Nazad
Vrh Dno