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

функция ord в С++ - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.76
Ане4кA
1 / 1 / 0
Регистрация: 05.05.2011
Сообщений: 66
22.05.2011, 17:35     функция ord в С++ #1
Объясните пожалуйста, что обозначает эта функция и для чего используется?
Например строчка (A[ord(c)-ord('0')])++; что обозначает?
Заранее спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.05.2011, 17:35     функция ord в С++
Посмотрите здесь:

C++ Какая функция в C++ аналогична Ord в Delphi?
C++ Функция...
Аналог ord и chr в С++ C++
функция C++
C++ Функция
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
emilen
10 / 10 / 0
Регистрация: 25.05.2010
Сообщений: 52
22.05.2011, 17:55     функция ord в С++ #2
функции ord в С++ нету, это скорее в вашем коде она где то объявлена или вы используете подключаемые библиотеки
ValeryLaptev
Эксперт C++
1005 / 784 / 46
Регистрация: 30.04.2011
Сообщений: 1,595
22.05.2011, 17:58     функция ord в С++ #3
Цитата Сообщение от emilen Посмотреть сообщение
функции ord в С++ нету, это скорее в вашем коде она где то объявлена или вы используете подключаемые библиотеки
Это стандартная функция в Паскале. Выдает число, соответствующее коду символа.
В С++ ее нет в стандарте. Значит, либо ляп в программе (недоперевели с паскаля), либо реализовали. Хотя этого не нужно в С++.
Ане4кA
1 / 1 / 0
Регистрация: 05.05.2011
Сообщений: 66
22.05.2011, 17:59  [ТС]     функция ord в С++ #4
вот программа, написала ее чисто по анологии с другой, но суть не поняла в этом Ord,как его можно заменить? если можно конечно.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{int A[10],B[10],a=0,b=0,i;
char c;
{for(i=0;i<10;i++)
  A[i]=0;
  B[i]=0;}
 cin>>c;
while(c!='0')
{(A[ord(c)-ord('0')])++;
  ++a;}
 cin>>c;
while(c!='0')   
{ (B[ord(c)-ord('0')])++;
  ++b;}
if(a>b)
cout<<"win A";
else
if(a<b)
cout<<"win B";
else
if(a==b)
for(i=0;i<=9;i++)
{i=i-i;
if(i=0)
cout<<"nich";  
if(A[i]>B[i])
cout<<"win A";
else
 cout<<"win B";}
 
    system("PAUSE");
    return EXIT_SUCCESS;
}
ValeryLaptev
Эксперт C++
1005 / 784 / 46
Регистрация: 30.04.2011
Сообщений: 1,595
22.05.2011, 18:01     функция ord в С++ #5
Просто замените на с-'0'
Хотя лучше вместо с писать ch - не будет путаницы с русскими буквами.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
22.05.2011, 18:04     функция ord в С++ #6
Не знаю Паскаля, но если это действительно:

Цитата Сообщение от ValeryLaptev Посмотреть сообщение
стандартная функция в Паскале. Выдает число, соответствующее коду символа.
то можно сделать так:
C++
1
2
3
while(c!='0')
{(A[c-'0'])++;
//и т.д.
Добавлено через 30 секунд
страницу не обновил...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.05.2011, 18:05     функция ord в С++
Еще ссылки по теме:

Аналоги функций ord() и chr() C++
Какой заголовочный файл надо для функции ord() ? C++
Функция C++

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

Или воспользуйтесь поиском по форуму:
Ане4кA
1 / 1 / 0
Регистрация: 05.05.2011
Сообщений: 66
22.05.2011, 18:05  [ТС]     функция ord в С++ #7
Спасибо, я заменила, но программа все равно не работает. Можете подсказать в чем дело?
Yandex
Объявления
22.05.2011, 18:05     функция ord в С++
Ответ Создать тему
Опции темы

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