infoarena

infoarena - concursuri, probleme, evaluator, articole => Informatica => Subiect creat de: Paicu Alexandru din August 11, 2007, 12:54:43



Titlul: ce inseamna eroarea?
Scris de: Paicu Alexandru din August 11, 2007, 12:54:43
Raport evaluator
Eroare de compilare in evaluator:
In file included from /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/backward/fstream.h:31,
                 from user.cpp:1:
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <iostream> instead of the deprecated header <iostream.h>. To disable this warning use -Wno-deprecated.
user.cpp:37:2: warning: no newline at end of file
user.cpp:3: error: 'x' was not declared in this scope
user.cpp:3: error: 'y' was not declared in this scope
user.cpp:3: error: initializer expression list treated as compound expression
user.cpp:4: error: expected ',' or ';' before '{' token
user.cpp:10: error: 'x' was not declared in this scope
user.cpp:10: error: 'y' was not declared in this scope
user.cpp:10: error: 'h' was not declared in this scope
user.cpp:10: error: 'w' was not declared in this scope
user.cpp:10: error: initializer expression list treated as compound expression
user.cpp:11: error: expected ',' or ';' before '{' token
user.cpp: In function 'int main()':
user.cpp:30: error: 'cmmdc' cannot be used as a function
user.cpp:33: error: 'endl' was not declared in this scope




Titlul: Răspuns: ce inseamna eroarea?
Scris de: Bondane Cosmin din August 11, 2007, 12:59:54
daca ai folosit cumva

Citat
#include <fstream.h>

inlocuieste cu :

Citat
#include <fstream>
using namespace std;


Titlul: Răspuns: ce inseamna eroarea?
Scris de: HighScore din August 11, 2007, 14:51:38
poi in general cred ca sunt cam erorile pe care ti le da borlandu cand nu initializezi variabile si folosesti functii neexistente  :-'...(banuiesc ca ai scris in borland prog).
Mai este in cea de la linia 33 cu endl care in esenta vrea sa spuna ca gcc gnu este facut pentru linux unde nu exista instructiunea endl, instructiune care ar trebui inlocuita cu "\n". Si desigur prima care este exact ceea ce a spus cosmin. :roll:

LE: a da si mai vad ca sunt si cateva erori de sintaxa :P have fun


Titlul: Răspuns: ce inseamna eroarea?
Scris de: Barsan Paul din August 11, 2007, 17:07:33

Mai este in cea de la linia 33 cu endl care in esenta vrea sa spuna ca gcc gnu este facut pentru linux unde nu exista instructiunea endl, instructiune care ar trebui inlocuita cu "\n". Si desigur prima care este exact ceea ce a spus cosmin. :roll:


Exista compilator gnu pentru windows(Dev C++), mie imi merge "endl" pe linux si din cate imi amintesc face parte din standard. [-X
PS:
Pentru headerele din C nu mai puneti ".h" la sfarsit si puneti un "c" in fata ex:
"#include <stdlib.h>"    ->  "#include <cstdlib>"
"#include <math.h>" -> "#include <cmath>" ....
pentru iostream, fstream si altele mai noi nu mai trebuie c-ul din fata.


Titlul: Răspuns: ce inseamna eroarea?
Scris de: HighScore din August 11, 2007, 17:55:25
e stiu ca mai peste tot iti recomanda sa eviti endl si d-aia  :), dar sincer n-am incercat niciodata sa vad cum se comporta pe linux, parca pe dev nu imi merge... :P
LE: dap nu merge pe dev, sau cel putin pe 4.9.9.2


Titlul: Răspuns: ce inseamna eroarea?
Scris de: Barsan Paul din August 11, 2007, 18:24:45
Cod:
#include <iostream>
#include <fstream>
using namespace std;

int main()
{
    fstream out("test.out",ios::out);
    out<<endl<<1<<endl<<endl<<2<<endl<<endl<<endl<<3<<endl;
    cout<<endl<<1<<endl<<endl<<2<<endl<<endl<<endl<<3<<endl;
    system("PAUSE");
    return 0;
}

Pe aceeasi versiune de dev c++ imi merge.Poate nu ai folosit namespace-urile , ai pus "iostream.h" si ai ignorat warning ul. :)

si pentru cei care nu stiu ce sunt namespace urile: http://en.wikipedia.org/wiki/Namespace_%28computer_science%29 (http://en.wikipedia.org/wiki/Namespace_%28computer_science%29)


Titlul: Răspuns: ce inseamna eroarea?
Scris de: HighScore din August 11, 2007, 18:31:02
dap you're right :surrender:


Titlul: Răspuns: ce inseamna eroarea?
Scris de: Tataranu Vlad din August 11, 2007, 21:33:04
Daca ai scris in Borland ( Borland nici macar nu respecta standardul C++, deci :fighting: ) ai grija la variabilele declarate in for ;)