Форум программистов, компьютерный форум CyberForum.ru

Тайна Страуструпа - std_lib_facilities.h ! - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 144, средняя оценка - 4.64
Serg_Smith
1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 20
17.11.2011, 02:22     Тайна Страуструпа - std_lib_facilities.h ! #1
Доброго времени суток.
Я начал изучать чудесный язык программирования С++ по книге Принципы и практика использования C++ Страуструпа.
Начитался ,что автор весьма серьезный и из этой книги можно подчеркнуть много полезного.
Но сразу столкнулся с проблемой,Код автора оказался у меня неработоспособен =( :

C++
1
2
3
4
5
6
7
8
#include "../../std_lib_facilities.h"       /*там было еще вот так "std_lib_facilities.h" ,что так же не дало никакого результата,в какие папки бы я не кидал этот фаил, взятый с его сайта.*/
 
int main()
{
   cout << "Hello, World!\n";
   keep_open_window();
   return 0;
}
я читал приложение ,в конце книги ,в котором даны инструкции по работе с этим магическим заголовком. Ничего не помогло ,весь итог :
helloworld.cpp(3): warning C4627: #include "../../std_lib_facilities.h": пропущен при поиске использования предкомпилированного заголовка
Добавление директивы в "StdAfx.h" или перестройка предкомпилированного заголовка
helloworld.cpp(11): fatal error C1010: непредвиденный конец файла во время поиска предкомпилированного заголовка. Возможно, вы забыли добавить директиву "#include "StdAfx.h"" в источник.
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========


Конечно,в этой программе вместо первой строчки, можно было поставить строки (опять же данные в книге,как сноска к первой программе) ,но каждый раз модифицировать написанные в книге программы ,для человека не знакомого с этим делом -весьма и весьма печальное занятие...

Так как я ,не знаком ранее с программированием ,я решил поискать книгу ,в которой идет объяснение по написанию сразу в Visual Studio 2010. По отзывам этот автор весьма авторитетен и его книги весьма поучительные,но столкнувшись с этим делом ,продолжил свои поиски и нашел книгу Бориса Пахомого C/C++ и Visual Studio 2010 ,но найдя ошибку в коде третей его программки (кстати в скриншотах ясно видно ,что программа работает некоректно,но автора это не остановило ),я усомнился ,стоит ли продолжать обучение по этой книге ,потому как объяснение тоже какое то стремное (


Ребята ,помогите мне с этим std_lib_facilities.h у Страуструп или посоветуйте стоящую книгу для старта С++ в Visual Studio 2010.


Заранее благодарю всех откликнувшихся!
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.11.2011, 02:22     Тайна Страуструпа - std_lib_facilities.h !
Посмотрите здесь:

Тайна Страуструпа - std_lib_facilities.h (2) C++
задачки Страуструпа C++
Угадайка от Страуструпа C++
C++ Подключение заголовочного файла std_lib_facilities.h
C++ Калькулятор в книге Страуструпа
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
17.11.2011, 15:55     Тайна Страуструпа - std_lib_facilities.h ! #21
#include <locale>
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Serg_Smith
1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 20
17.11.2011, 16:09  [ТС]     Тайна Страуструпа - std_lib_facilities.h ! #22
Цитата Сообщение от Deviaphan Посмотреть сообщение
#include <locale>
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <locale> 
#include <std_lib_facilities.h>
 
int main()
{
    cout.imbue(std::locale("Russian"));
   cout << "Пожалуйста, введите ваше имя (затем введите <Enter>) \n";
   string first_name;
   cin >> first_name;
   cout << "Привет , "<< first_name << "!\n";
   return 0;
}
ничего не изменилось (
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
17.11.2011, 16:18     Тайна Страуструпа - std_lib_facilities.h ! #23
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <string>
#include <iostream>
#include <locale>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    wcout.imbue(std::locale(".866"));
    wcout << L"Пожалуйста, введите ваше имя (затем введите <Enter>) \n";
    wstring first_name;
    wcin >> first_name;
    wcout << L"Привет , "<< first_name << "!\n";
    wcin.get();
    wcin.get();
    return 0;
}
Serg_Smith
1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 20
17.11.2011, 23:17  [ТС]     Тайна Страуструпа - std_lib_facilities.h ! #24
error C2061: синтаксическая ошибка: идентификатор "_TCHAR"
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,131
18.11.2011, 00:26     Тайна Страуструпа - std_lib_facilities.h ! #25
Сделайте список параметров функции main пустым.
Serg_Smith
1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 20
18.11.2011, 00:31  [ТС]     Тайна Страуструпа - std_lib_facilities.h ! #26
MSVCRTD.lib(crtexe.obj) : error LNK2019: ссылка на неразрешенный внешний символ _main в функции ___tmainCRTStartup
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,131
18.11.2011, 00:35     Тайна Страуструпа - std_lib_facilities.h ! #27
Вместо
Цитата Сообщение от Deviaphan Посмотреть сообщение
int _tmain(int argc, _TCHAR* argv[])
напишите
C++
1
int main()
Добавлено через 2 минуты
Deviaphan,
с кодировкой у вас проблемы. Русские буквы вводятся не правильно.
Navern
4 / 4 / 0
Регистрация: 01.10.2011
Сообщений: 33
18.11.2011, 00:39     Тайна Страуструпа - std_lib_facilities.h ! #28
я на учебных примерах пользуюсь студией, но не создают проект каждый раз, а компилирую через командную строку командой cl /EHsc c:\путь к файлу. Мне пока так удобней.
Serg_Smith
1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 20
18.11.2011, 00:55  [ТС]     Тайна Страуструпа - std_lib_facilities.h ! #29
Цитата Сообщение от Chelioss Посмотреть сообщение
Вместо

напишите
C++
1
int main()
Добавлено через 2 минуты
Deviaphan,
с кодировкой у вас проблемы. Русские буквы вводятся не правильно.
все равно ошибка
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,131
18.11.2011, 00:59     Тайна Страуструпа - std_lib_facilities.h ! #30
Цитата Сообщение от Serg_Smith Посмотреть сообщение
все равно ошибка
какая?
Navern
4 / 4 / 0
Регистрация: 01.10.2011
Сообщений: 33
18.11.2011, 00:59     Тайна Страуструпа - std_lib_facilities.h ! #31
Цитата Сообщение от Serg_Smith Посмотреть сообщение
все равно ошибка
возможно после директивы #include было бы неплохо написать using namespace std;
Serg_Smith
1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 20
18.11.2011, 01:08  [ТС]     Тайна Страуструпа - std_lib_facilities.h ! #32
Цитата Сообщение от Chelioss Посмотреть сообщение
какая?
прошу прощения,это я не стер 3 символа (((
теперь работает ...так много манипуляций что бы было на русском)))
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
18.11.2011, 05:49     Тайна Страуструпа - std_lib_facilities.h ! #33
Цитата Сообщение от Chelioss Посмотреть сообщение
с кодировкой у вас проблемы. Русские буквы вводятся не правильно.
У меня проблем нет, потому что проект UNICODE. А вот с ASCI действительно проблема, специально сейчас проверил.)
Serg_Smith
1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 20
26.11.2011, 17:04  [ТС]     Тайна Страуструпа - std_lib_facilities.h ! #34
и так новая проблемка в с книгой этого автора(
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <std_lib_facilities.h>
 
int main()
{
vector<string> words;
string temp;
while(cin>>words)
     words.push_back(temp);
cout<<"Number of words: "<<words.size()<<endl;
sort(words.begin(),words.end());
for(int i=0; 1< words.size(); ++i)
    if(i==0 || words[i-l] !=words[i])
        cout<<words[i]<<"\n";
}
Программа должна принимать слова и потом выдавать их в алфавитном порядке ,не принимая дважды одно и тоже слово.
но выдает ошибку при компиляции :
C:\Users\Сергей\Documents\Visual Studio 2010\Projects\vectors\Debug\vectors.exe : fatal error LNK1120: 1 неразрешенных внешних элементов

в чем загвоздка ?(
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
26.11.2011, 17:08     Тайна Страуструпа - std_lib_facilities.h ! #35
C++
1
2
3
4
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
И в условии цикла должно быть i < words.size()
и
words[i-1]
Serg_Smith
1 / 1 / 0
Регистрация: 17.11.2011
Сообщений: 20
26.11.2011, 17:37  [ТС]     Тайна Страуструпа - std_lib_facilities.h ! #36
прошу извинить,с денницей я экспериментировал ибо не мог понять там 1 или l...
но даже добавив все,ошибка никуда не делась (

проект создавался пустой .
Сыроежка
Заблокирован
26.11.2011, 17:42     Тайна Страуструпа - std_lib_facilities.h ! #37
Цитата Сообщение от Serg_Smith Посмотреть сообщение
прошу извинить,с денницей я экспериментировал ибо не мог понять там 1 или l...
но даже добавив все,ошибка никуда не делась (

проект создавался пустой .
У вас была одна ощибка, что вместо строчной буквы i, вы использовали символ 1.
Как может возникать та же самая ошибка, если вы говорите, что вы это исправили?!
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
26.11.2011, 18:11     Тайна Страуструпа - std_lib_facilities.h ! #38
Цитата Сообщение от Сыроежка Посмотреть сообщение
У вас была одна ощибка,
Там в одном месте строчная Л, в другом единица.


Цитата Сообщение от Serg_Smith Посмотреть сообщение
но даже добавив все,ошибка никуда не делась
Хэдэры добавил? Приведи сообщение об ошибке полностью.

А ещё, ты про return 0 забыл.
Сыроежка
Заблокирован
26.11.2011, 18:16     Тайна Страуструпа - std_lib_facilities.h ! #39
Цитата Сообщение от Deviaphan Посмотреть сообщение
А ещё, ты про return 0 забыл.
return 0 совершенно нет никакой необходимости включать в программу. Так что он ничего не забыл, а это вы демонстрируете незнание стандарта.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.11.2011, 18:21     Тайна Страуструпа - std_lib_facilities.h !
Еще ссылки по теме:

C++ Задание из книги Страуструпа
Калькулятор страуструпа C++
C++ Задание из Страуструпа

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
26.11.2011, 18:21     Тайна Страуструпа - std_lib_facilities.h ! #40
Цитата Сообщение от Сыроежка Посмотреть сообщение
а это вы демонстрируете незнание стандарта
Я демонстрирую хороший тон программирования.) Это как обнулять указатель при создании. Не обязательно, но так культурнее.
Yandex
Объявления
26.11.2011, 18:21     Тайна Страуструпа - std_lib_facilities.h !
Закрытая тема Создать тему
Опции темы

Текущее время: 16:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru