Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2004.11.14;
Скачать: [xml.tar.bz2];

Вниз

Помогите пожалуйста перевести на си   Найти похожие ветки 

 
vidiv ©   (2004-10-26 16:51) [0]

у меня есть программа написаная на паскале (вообще консольное дельфовское приложение, но в строгом соответствии с паскалем). нужно его перевести на си. (который ++, досовский). Если ктонибудь мне может в этом помочь, прошу - помогите.
вот ссылка на код http://pluton.sakhgu.sakhalin.ru/prg.htm

единственное, на мой взгляд, несоответсвтивие это то что в си строки начинаются (как я думаю) с 0 индекса, а в паскале с первого. я вынес эту функцию отдельно
function getOneChar(str:string; i:integer):char;
{// getOneChar("hello", 1)=="h";}
begin
   if i > length(str) then begin
       result := #0;
       exit;
   end;
   result := str[i];
end;

чтобы думать пришлось только в одном месте :)
Очень приочень надеюсь на вашу помощь!!!


 
KSergey ©   (2004-10-26 16:55) [1]

В Си нем как такового типа String (строки изменяющейся длины)
Есть в STL (раз уж про ++ речь) класс String, на шаблоне сделан. В приципе снаружи почти String из дельфи, хотя, конечно...

А вообще ответ один: или сумма или уточните что именно непонятно.


 
jack128 ©   (2004-10-26 16:56) [2]

char getOneChar(char * str; int i)
{
 if(i >= strlen(s)) return 0;
 else return str[i-1];
}


 
KSergey ©   (2004-10-26 16:58) [3]

К стати, еще раз для меня тупого: только в этой ф-ции непонятки или по всему коду?


 
vidiv ©   (2004-10-27 05:42) [4]


> KSergey ©   (26.10.04 16:58) [3]

тупой скорее тут я... мне вобщем надо перевести весь код на си.. я си никогда не знал, знаю только общие принципы (как в PHP или JS). А перевести не могу... нужно всю програму перевсети...


 
vidiv ©   (2004-10-27 06:36) [5]

проблема еще с функцией
bool numericTest (char * exp; extended & value) {
/* Функция должна на входе иметь стоку и сслыку на число
на выходе 1 - если в строке было записано число и 0 - в противном случае.
если 1 - то также в value передать значение этого числа
надо доделать функцию
*/
   int code;
   val(exp, value, code);
   return code==0;
}

конеретно с val. я не знаю аналога функции val в си...
на паскале она выглядит так:
function numericTest (exp:string;  var value:Extended):boolean;
var
   code:integer;

begin
   val(exp, value, code);
   result := code = 0;
end;


и для паскалевской функции  str (str(val:20:12, result);) тоже не знаю.


 
vidiv ©   (2004-10-27 14:40) [6]

мдя... видимо я чтото не так сказал:)) ну чтож бываит



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2004.11.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.043 c
14-1098944904
Ega23
2004-10-28 10:28
2004.11.14
Голосование!


8-1092307025
_Oleg_
2004-08-12 14:37
2004.11.14
Захват звука в микрофоне


1-1098948958
vvv
2004-10-28 11:35
2004.11.14
тип символа


1-1098988791
Victor
2004-10-28 22:39
2004.11.14
Подскажите: Как в ячейке StringList а не обрезался текст


14-1098489212
SergP
2004-10-23 03:53
2004.11.14
Проблемка с JS. Мож кто знает?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский