Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[C++] Różnica w kompilacji między Microsoft Visual Studio a Code::Blocks

Ostatnio zmodyfikowano 2017-06-09 20:17
Autor Wiadomość
arthur55
Temat założony przez niniejszego użytkownika
[C++] Różnica w kompilacji między Microsoft Visual Studio a Code::Blocks
» 2017-06-05 18:34:30
Poniższy kod bez problemu kompiluje w Code::Blocks, a  Microsoft Visual Studio 2017 (Intel C++ 17.0) pokazuje się szereg błędów.

C/C++
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
#include <conio.h>
#include <fstream>
#include <cstdlib>

using namespace std;

int main()
{
    int const lwierszy( 9 );
    int const lkolumn( 2 );
    double tablica[ lwierszy ][ lkolumn ] = { { 0, 0 }, { 126209.4017, 156209.4017 }, { 278132.4786, 308132.4786 },
        { 232850.4274, 262850.45 }, { 73619.65812, 78619.658 }, { 121196.5812, 221196.58 }, { 149786.3248, 199786.3 },
        { 100756.4103, 500756.41 }, { 76965.81197, 96965.8 } };
   
    for( int i = 0; i < lwierszy; i++, cout << endl )
   
    for( int j = 0; j < lkolumn; j++ )
   
         printf( "%.4f\t", tablica[ i ][ j ] );
   
    fstream plik_wy( "E:/Programowanie/FNowy.txt", ios::out );
    for( int i = 0; i < lwierszy; i++, plik_wy << endl )
   
    for( int j = 0; j < lkolumn; j++ )
         plik_wy << tablica[ i ][ j ] << "    ";
   
    system( "pause" );
   
    return 0;
}
P-162085
michal11
» 2017-06-05 18:56:18
Jakich błędów?
P-162086
arthur55
Temat założony przez niniejszego użytkownika
» 2017-06-05 19:02:15
1>------ Kompilacja rozpoczęta: Projekt: ConsoleApplication1, Konfiguracja: Release x64 ------
1>stdafx.cpp
1>ConsoleApplication1.cpp
1>ConsoleApplication1.cpp(18): error : identifier "ifstream" is undefined
1>  ifstream plik("E:/Programowanie/FM.txt");
1>  ^
1>
1>ConsoleApplication1.cpp(25): error : identifier "linia" is undefined
1>  while (getline(plik, linia))
1>                       ^
1>
1>ConsoleApplication1.cpp(25): error : identifier "getline" is undefined
1>  while (getline(plik, linia))
1>         ^
1>
1>ConsoleApplication1.cpp(28): error : identifier "cout" is undefined
1>  cout << linia << endl;
1>  ^
1>
1>ConsoleApplication1.cpp(28): error : identifier "endl" is undefined
1>  cout << linia << endl;
1>                   ^
1>
1>ConsoleApplication1.cpp(33): error : identifier "cout" is undefined
1>  cout << "BúąD: nie mo┐na otworzyŠ pliku do odczytu." << endl;
1>  ^
1>
1>ConsoleApplication1.cpp(33): error : identifier "endl" is undefined
1>  cout << "BúąD: nie mo┐na otworzyŠ pliku do odczytu." << endl;
1>                                                          ^
1>
1>ConsoleApplication1.cpp(36): error : identifier "string" is undefined
1>  string const nazwaPliku("E:/Programowanie/Predkosc_pojazdu.txt");
1>  ^
1>
1>ConsoleApplication1.cpp(36): error : expected a ";"
1>  string const nazwaPliku("E:/Programowanie/Predkosc_pojazdu.txt");
1>         ^
1>
1>ConsoleApplication1.cpp(37): error : identifier "ofstream" is undefined
1>  ofstream mojStrumien(nazwaPliku.c_str());
1>  ^
1>
1>ConsoleApplication1.cpp(37): error : identifier "nazwaPliku" is undefined
1>  ofstream mojStrumien(nazwaPliku.c_str());
1>                       ^
1>
1>ConsoleApplication1.cpp(42): error : identifier "cout" is undefined
1>  cout << getline(plik, linia) << endl;
1>  ^
1>
1>ConsoleApplication1.cpp(42): error : identifier "linia" is undefined
1>  cout << getline(plik, linia) << endl;
1>                        ^
1>
1>ConsoleApplication1.cpp(42): error : identifier "getline" is undefined
1>  cout << getline(plik, linia) << endl;
1>          ^
1>
1>ConsoleApplication1.cpp(42): error : identifier "endl" is undefined
1>  cout << getline(plik, linia) << endl;
1>                                  ^
1>
1>ConsoleApplication1.cpp(47): error : expected a "}"
1>
1>compilation aborted for ConsoleApplication1.cpp (code 2)
1>Kompilowanie projektu „ConsoleApplication1.vcxproj” wykonane — NIEPOWODZENIE.
========== Kompilacja: 0 zakończono powodzeniem, 1 zakończono niepowodzeniem, 0 zaktualizowano, 0 pominięto ==========
P-162088
michal11
» 2017-06-05 19:15:51
Dlaczego mieszasz C z C++?

Spróbuj dodać std:: przed każdym cout, endl, fstream itp. zobaczymy czy to pomoże.
P-162090
arthur55
Temat założony przez niniejszego użytkownika
» 2017-06-05 19:50:35
C/C++
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
#include <conio.h>
#include <fstream>
#include <cstdlib>

using namespace std;

string linia;

int main()
{
   
    ifstream plik( "E:/Programowanie/FM.txt" );
   
    if( plik )
   
    while( getline( plik, linia ) )
    {
       
        std::cout << linia << endl;
    }
   
    else
    {
        std::cout << "BŁĄD: nie można otworzyć pliku do odczytu." << endl;
    }
    {
        string const nazwaPliku( "E:/Programowanie/Predkosc_pojazdu.txt" );
        ofstream mojStrumien( nazwaPliku.c_str() );
       
        if( mojStrumien )
        {
           
            std::cout << getline( plik, linia ) << endl;
        }
    }
    return 0;
   
}[ / code ]
P-162092
arthur55
Temat założony przez niniejszego użytkownika
» 2017-06-05 19:53:18
Błędy:

1>------ Kompilacja rozpoczęta: Projekt: ConsoleApplication1, Konfiguracja: Release x64 ------
1>ConsoleApplication1.cpp
1>ConsoleApplication1.cpp(24): error : identifier "getline" is undefined
1>  while (getline(plik, linia))
1>         ^
1>
1>ConsoleApplication1.cpp(27): error : namespace "std" has no member "cout"
1>  std::cout << linia << endl;
1>       ^
1>
1>ConsoleApplication1.cpp(32): error : namespace "std" has no member "cout"
1>  std::cout << "BúąD: nie mo┐na otworzyŠ pliku do odczytu." << endl;
1>       ^
1>
1>ConsoleApplication1.cpp(41): error : namespace "std" has no member "cout"
1>  std::cout << getline(plik, linia) << endl;
1>       ^
1>
1>ConsoleApplication1.cpp(41): error : identifier "getline" is undefined
1>  std::cout << getline(plik, linia) << endl;
1>               ^
1>
1>compilation aborted for ConsoleApplication1.cpp (code 2)
1>Kompilowanie projektu „ConsoleApplication1.vcxproj” wykonane — NIEPOWODZENIE.
========== Kompilacja: 0 zakończono powodzeniem, 1 zakończono niepowodzeniem, 0 zaktualizowano, 0 pominięto ==========

P-162093
Monika90
» 2017-06-05 19:59:56
Użycie cout wymaga #include <iostream>, a getline wymaga #include <string>
P-162094
arthur55
Temat założony przez niniejszego użytkownika
» 2017-06-05 20:02:06
Przepraszam, bo pomyliłem kody przy wklejaniu. Pierwszy kod działa, błędy dotyczą drugiego.
P-162095
« 1 » 2
  Strona 1 z 2 Następna strona