Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > Перевод функций с Delphi на С++


Автор: lansel 17.6.2006, 15:56
Код

Function Vremya: longint;
var  hour,min,sec,dec: word; hour1,min1:longint;
Begin   GetTime(hour,min,sec,dec);
    hour1:=hour;
    min1:=min;
    Vremya=hour1*360000+min1*6000+sec*100+dec
End;


Меня интересует как будет выглядеть эта функция на С++.
И еще интересно ф-я GetTime, она встроеная?? и есть ли такая в С++??

Код

Function A ( i, j: word): Boolean;
var k:longint;
Begin
 if j<i then begin
  k:=i; i:=j; j:=k;
  k:=(n+n-i);
  k:=((k*(i-1)) shr 1+j);
  i:=k shr 8;
  j:=k-longint(i) shl 8;
  A=j IN p[i];
End; 
 

Как будут выглядеть операции shr,shl,in на С++?? 

Автор: mr.Anderson 17.6.2006, 21:37
Только я не совсем понял, что за тип Word... Это типа char *? В смысле, это строка? Тогда первая функция будет так:
Код

long Vremya(void)
{
 char * hour,*min,*sec,*dec; 
 long hour1,min1;
 GetTime(hour,min,sec,dec);
 hour1=hour;
 min1=min;
 return hour1*360000+min1*6000+sec*100+dec;
}
  

Автор: ILAgent 18.6.2006, 00:50
 
word- это слово, т.е. 2 байта, в VC++ пишется WORD  smile 
shl - сдвиг влево,  оператор <<
shr - соответственно, >>
in определяет вхождение элемента в множество, в C++ такой структуры нет.
 

Автор: lansel 18.6.2006, 10:00
Спасибо, ребятки.

Word я заменяю на тип int. так можно?

я что же мне делать тогда с in (вложение элементов), если их в С++ нет, не подскажите? может можно как-нидь подругому?? 

Автор: Любитель 21.6.2006, 01:05
std::set. 

Автор: lansel 21.6.2006, 14:11
Цитата(Любитель @ 21.6.2006,  01:05)
std::set.

что это значит? 

Автор: Любитель 22.6.2006, 00:31
Стандартный контейнер STL, реализующий множества, причём без "паскалевксих" ограничений на длину и порядковость типов. 

Автор: lansel 22.6.2006, 08:47
очень хорошо!!

А как его применять, в моем то случае?? 

Автор: Romikgy 22.6.2006, 09:06
Цитата(lansel @  17.6.2006,  14:56 Найти цитируемый пост)
p[i];

где описание этой переменной?
Цитата(lansel @  18.6.2006,  09:00 Найти цитируемый пост)
я что же мне делать тогда с in (вложение элементов)


Цитата(Любитель @  21.6.2006,  00:05 Найти цитируемый пост)
std::set.


Цитата(lansel @  22.6.2006,  07:47 Найти цитируемый пост)
А как его применять, в моем то случае?? 

создать его а потом юзать , 
на первый вопрос ответь! 

Автор: lansel 23.6.2006, 16:04
Цитата(Romikgy @ 22.6.2006,  09:06)
где описание этой переменной?






Код

Const n=100; m=800; mm= ((n*n+n) div 2) div 256;
Type mno=set of 0..255;  matr=Array[0..mm] of mno;
Var p:matr; 
 

Автор: Romikgy 23.6.2006, 16:26
если 
Цитата(lansel @  23.6.2006,  15:04 Найти цитируемый пост)
 matr=Array[0..mm] of mno;Var p:matr; 

то 
Цитата(lansel @  17.6.2006,  14:56 Найти цитируемый пост)
 A=j IN p[i];

не совсем правомерно, имхо оператор IN только для множеств, а здесь массив 

Автор: lansel 26.6.2006, 09:51
и что мне делать??
На делфи мне дали рабочии процедуры и функции...и я хочу чтоб они работали на Си(( 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)