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

Function 'CharToOem' should have a prototype - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.85
bacekk
2 / 2 / 0
Регистрация: 30.11.2010
Сообщений: 89
19.12.2011, 03:23     Function 'CharToOem' should have a prototype #1
Код
#include <iostream.h>
#include <conio.h>
#include <windows.h>
#include<iomanip.h>
        
char NEWT[256];
char*RUS(char*TEXT) {
CharToOem(TEXT,NEWT);
return NEWT;}
 
int v;
int main()
{       int i,j;
   int infinity=1000;                     // Бесконечность
                                                                                  // Количество вершин в графе
   int VES[100][100];                                             // Матрица весов графа
 
   int x[100];                                                    //Массив, содержащий единицы и нули для каждой вершины,
                                                                                  // x[i]=0 - еще не найден кратчайший путь в i-ю вершину,
                                                                                  // x[i]=1 - кратчайший путь в i-ю вершину уже найден
   
   int DlinaPuti[100];                                    //t[i] - длина кратчайшего пути от вершины s в i
 
   int PredVertex[100];                                   //h[i] - вершина, предшествующая i-й вершине
                                                                                  //на кратчайшем пути
   int VERTEX;
   int p;                         
cout<<RUS("Ввести количество вершин в графе ")<<endl;
cin>>VERTEX;p= VERTEX;                                    //Число вершин в графе
cout<<RUS("Заполните матрицу весов графа ")<<endl;      // Матрица весов графа
cout<<setw(4);
for (i=0;i<VERTEX;i++)
cout<<RUS("|x")<<i+1;
cout<<endl;
 
for(i=0;i<VERTEX;i++)
{cout<<RUS("X")<<i+1<<'|';
for(j=0;j<VERTEX;j++)
cin>>VES[i][j];}
 
                                                                                // Будем искать путь из вершины s в вершину g по циклу
   int start;                                           // Номер исходной вершины
   int end;                                             // Номер конечной вершины
N: cout<<RUS("Введите стартовую вершину: ");    // Номер может изменяться от 0 до p-1
   cin>>start;
   if (start>(p-1) && start<0) {cout<<RUS("Нет такой вершины повторите ввод...")<<endl; goto N; } // на случай неверных данных
   start=start-1;                                               //так как массив начинается с 0 отнимаем от вводимой цифры 1
   for (int prosto=0;prosto<VERTEX;prosto++)
   {end=prosto;                                                 //цикл прогоняет алгоритм Флойда p-ое количество раз преврашая его в алгоритм Дейкстры  
   if (end==start) continue;                    //исключаем просчет растояния между одной и той же точкой
   else
   {
 
                                                                                 // Инициализируем начальные значения массивов
   int u;                                                                // Счетчик вершин
   for (u=0;u<p;u++)
   {
       DlinaPuti[u]=infinity;                                    //Сначала все кратчайшие пути из s в i 
                                                                                 //равны бесконечности
      x[u]=0;                                                    // и нет кратчайшего пути ни для одной вершины
   }
   PredVertex[start]=0;                                         // s - начало пути, поэтому этой вершине ничего не предшествует
   DlinaPuti[start]=0;                                          // Кратчайший путь из s в s равен 0
   x[start]=1;                                                          // Для вершины s найден кратчайший путь
   v=start;                                                                     // Делаем s текущей вершиной
   
   while(1)
   {
                                                                                // Перебираем все вершины, смежные v, и ищем для них кратчайший путь
      for(u=0;u<p;u++)
      {
         if(VES[v][u]==0)continue;              // Вершины u и v несмежные
         if(x[u]==0 && DlinaPuti[u]>DlinaPuti[v]+VES[v][u]) //Если для вершины 'u' еще не 
                                                                                //найден кратчайший путь
                                                                // и новый путь в 'u' короче чем 
                                                                                //старый, то
         {
            DlinaPuti[u]=DlinaPuti[v]+VES[v][u];                        //запоминаем более короткую длину пути в
                                                                                //массив t[и]
           PredVertex[u]=v;                                             //запоминаем, что v->u часть кратчайшего 
                                                                                //пути из s->u
         }
      }
 
                                                                                 // Ищем из всех длин некратчайших путей самый короткий
      int w=infinity;                                   // Для поиска самого короткого пути
      v=-1;                                                             // В конце поиска v - вершина, в которую будет 
                                                                                // найден новый кратчайший путь. Она станет 
                                                                                // текущей вершиной
      for(u=0;u<p;u++)                                  // Перебираем все вершины.
      {
         if(x[u]==0 && DlinaPuti[u]<w)                   // Если для вершины не найден кратчайший 
                                                                                 // путь и если длина пути в вершину 'u' меньше
                                                                                 // уже найденной, то
         {
            v=u;                                                 // текущей вершиной становится 'u'-я вершина
            w= DlinaPuti[u];
         }
      }
      if(v==-1)
      {
         cout<<RUS("Нет пути из вершины ")<<start+1;cout<<RUS(" в вершину ")<<end+1<<"."<<endl;
         break;
      }
      if(v==end)                                                        // Найден кратчайший путь,
      {                                                             // выводим его
         cout<<RUS("Кратчайший путь из вершины ")<<start+1;cout<<RUS(" в вершину ")<<end+1<<":";
           u=end;
           while(u!=start)
         {
            cout<<" "<<u+1;
            u=PredVertex[u];
         }
         cout<<" "<<start+1<<RUS(". Длина пути - ")<< DlinaPuti[end];cout<<endl;
           break;
      }
      x[v]=1;
   }}}
   
return 0;}
пишет ошибку в 8 строке: Function 'CharToOem' should have a prototype
как исправить?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2011, 03:23     Function 'CharToOem' should have a prototype
Посмотрите здесь:

трудности с CharToOem C++
OemToChar/CharToOem C++
C++ Помогите с CharToOem и ещё с if and else
как исправить Function 'sewt' should have a prototype C++
C++ Функция CharToOem
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kisssko
31 / 31 / 2
Регистрация: 19.12.2011
Сообщений: 72
19.12.2011, 05:48     Function 'CharToOem' should have a prototype #2
Попробовать CharToOemA.
bacekk
2 / 2 / 0
Регистрация: 30.11.2010
Сообщений: 89
19.12.2011, 10:20  [ТС]     Function 'CharToOem' should have a prototype #3
тоже самое, помогите, как исправить, надо чтобы работало...

Добавлено через 1 час 46 минут
Помогите, чо с этим делать? Мне седня сдать надо в 13:00. Главное, чтобы программа работала.. Сильно прошу..

Добавлено через 43 минуты
Аааа, отзовитесь, хоть кто-нибудь(
absokolov
29 / 29 / 1
Регистрация: 10.05.2011
Сообщений: 120
19.12.2011, 10:35     Function 'CharToOem' should have a prototype #4
А что у Вас за компилятор?
И кстати:
1) #include <iostream.h> - замените на #include <iostream>
2) #include<iomanip.h> - на #include <iomanip>
3) После инклудов вставьте "using namespace std;"
bacekk
2 / 2 / 0
Регистрация: 30.11.2010
Сообщений: 89
19.12.2011, 10:38  [ТС]     Function 'CharToOem' should have a prototype #5
absokolov, у меня Borland C 3.5
сделал все как Вы сказали, еще больше ошибок стало после того как стер .h
если оставить все как есть и вставить using namespace std; после библиотек, то теперь 2 ошибки: там где раньше была и declaration syntax error
что делать? Я в панике..
absokolov
29 / 29 / 1
Регистрация: 10.05.2011
Сообщений: 120
19.12.2011, 10:53     Function 'CharToOem' should have a prototype #6
Честно говоря не использовал "Borland C"! Значит верните на тот код что у Вас был, и попробуйте подключить #include <stdio.h>
bacekk
2 / 2 / 0
Регистрация: 30.11.2010
Сообщений: 89
19.12.2011, 10:58  [ТС]     Function 'CharToOem' should have a prototype #7
absokolov, та же ошибка все равно...
помогите пожалуйста, час остался, очень хочется сдать прогу, а она не работает
absokolov
29 / 29 / 1
Регистрация: 10.05.2011
Сообщений: 120
19.12.2011, 11:03     Function 'CharToOem' should have a prototype #8
Судя по ошибке, могу предположить что в подключаемых файлах функция объявлена, то не подключается либа, в которой эта функция реализована!
Вам нужно именно на Borland C ?
bacekk
2 / 2 / 0
Регистрация: 30.11.2010
Сообщений: 89
19.12.2011, 11:10  [ТС]     Function 'CharToOem' should have a prototype #9
absokolov, в принципе можно и не на борланде главное запустить...
absokolov
29 / 29 / 1
Регистрация: 10.05.2011
Сообщений: 120
19.12.2011, 11:13     Function 'CharToOem' should have a prototype #10
Цитата Сообщение от bacekk Посмотреть сообщение
absokolov, в принципе можно и не на борланде главное запустить...
Значит поставьте Visual C++ и не будет у Вас проблем! У меня Ваш код закомпилился без проблем!
bacekk
2 / 2 / 0
Регистрация: 30.11.2010
Сообщений: 89
19.12.2011, 11:17  [ТС]     Function 'CharToOem' should have a prototype #11
absokolov, а у меня в нем ошибка: не удается найти указанный файл
чо это? у меня не лады с программированием просто
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
19.12.2011, 11:22     Function 'CharToOem' should have a prototype #12
Цитата Сообщение от absokolov Посмотреть сообщение
Судя по ошибке, могу предположить что в подключаемых файлах функция объявлена, то не подключается либа, в которой эта функция реализована!
Цитата Сообщение от bacekk Посмотреть сообщение
Function 'CharToOem' should have a prototype
Дословно "Функция 'CharToOem' должна иметь прототип", т.е. функция нигде не объявлена.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.12.2011, 11:45     Function 'CharToOem' should have a prototype
Еще ссылки по теме:

Ошибка с CharToOem C++
замена chartooem C++
C++ Ошибка function should have a prototype

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

Или воспользуйтесь поиском по форуму:
bacekk
2 / 2 / 0
Регистрация: 30.11.2010
Сообщений: 89
19.12.2011, 11:45  [ТС]     Function 'CharToOem' should have a prototype #13
Всем большое спасибо! Запустил в Dev cpp! ура!!
Yandex
Объявления
19.12.2011, 11:45     Function 'CharToOem' should have a prototype
Ответ Создать тему
Опции темы

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