Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 19

Перевод из delphi в c++

24.01.2013, 02:22. Показов 1546. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста перевести программку из delphi в c++

Delphi
1
2
3
4
5
6
function ReflectStr(str:string):string;
var
i:integer;
begin
for i:=0 to length(str)-1 do result:=result+str[length(str)-i];
end;
буду очень признателен
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.01.2013, 02:22
Ответы с готовыми решениями:

Перевод из Delphi 7 в Delphi XE2
Вообщем Этот код на delphi 7 спокойно компилируется: Function ResolveIP(HostName: String): String; Type tAddr = Array Of...

Перевод из Си в Delphi
Помогите нужно срочно перевести #include <ctype.h> #include <stdio.h> enum { BUFFER_SIZE = 100 }; int skv(const char*...

Перевод из С в Delphi
Прошу прощения, не знал куда можно обратиться, но нужна помощь, перевести из языка (скорее всего это С) в Delphi Собственно сам код void...

15
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
24.01.2013, 02:29
Delphi
1
2
3
4
5
6
function ReflectStr(str:string):string;
var
i:integer;
begin
for i:=0 to length(str)-1 do result:=result+str[length(str)-i];
end;
C++
1
2
3
4
5
6
7
8
9
#include<string>
 
std::string RectStr(std::string str)
{
   std::string result; 
   for(size_t i=0; i<str.length(); i++) result+= str[str.length()-i];
 
return result;
}
А вообще компилятор какой ?
0
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 19
24.01.2013, 02:34  [ТС]
xCode

не объяснишь ламеру что такое length и с чем его едят?
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
24.01.2013, 02:40
Длина строки - количество символов

Добавлено через 1 минуту
Возможно ошибка в цикле
C++
1
for(size_t i=1; i<=str.length(); i++) result+= str[str.length()-i];
В Delphi вроде строки начинаются с "1" ( в С++ с "0" )
0
Студент
 Аватар для MickeyBlueEyes
121 / 132 / 39
Регистрация: 07.04.2011
Сообщений: 503
24.01.2013, 02:48
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
#include "stdafx.h"
#include <iostream>
#include "string.h"
 
using namespace std;
 
 
void func(char * str, char * result){
 
    unsigned int i = 0;
 
    for(; i <= (strlen(str) - 1); i++){
        result[i] = str[((strlen(str) - 1) - i)];
    }
 
    result[i] = '\0';
 
}
 
int main()
{       
 
    char result[30];
 
    func("Hello world", &result[0]);
 
    cout << result;
    
    system("PAUSE");
        
}
Добавлено через 6 минут
В Си есть ф-ция strrev для этого дела, принимает адресс начала строки и изменяет задом на перёд.
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
24.01.2013, 02:50
Цитата Сообщение от MickeyBlueEyes Посмотреть сообщение
В Си есть ф-ция strrev для этого дела, принимает адресс начала строки и изменяет задом на перёд.
При чем тут Си ?
0
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 19
24.01.2013, 02:54  [ТС]
Тогда как проще написать программу, которая тексты задом наперёд выводит? Я хотел задать сделать по типу той, что в начале на делфи скидывал, но пока нифига не получается
0
Студент
 Аватар для MickeyBlueEyes
121 / 132 / 39
Регистрация: 07.04.2011
Сообщений: 503
24.01.2013, 03:00
Цитата Сообщение от Avazart Посмотреть сообщение
При чем тут Си ?
Может потому что эту ф-цию можна использовать и в С++?)

Добавлено через 1 минуту
Цитата Сообщение от koks_life Посмотреть сообщение
Тогда как проще написать программу, которая тексты задом наперёд выводит? Я хотел задать сделать по типу той, что в начале на делфи скидывал, но пока нифига не получается
Можна воспользоватся ф-цией strrev(), а можна примерами которые описывали высше.

Добавлено через 2 минуты
Например так.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "stdafx.h"
#include <iostream>
#include "string.h"
using namespace std;
 
int main(){       
 
    char result[] = "Hello world";
 
    strrev(result);
 
    cout << result;
    
    system("PAUSE");
        
}
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
24.01.2013, 03:03
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//---------------------------------------------------------------------------
#include <iostream>
#include <algorithm>
#include <string>
//---------------------------------------------------------------------------
int main()
{
 
  std::string s="1234";
  std::reverse(s.begin(), s.end() );
  std::cout<< s <<std::endl;
 
getchar();
return 0;
}
//---------------------------------------------------------------------------
4321
Добавлено через 1 минуту
Цитата Сообщение от MickeyBlueEyes Посмотреть сообщение
Может потому что эту ф-цию можна использовать и в С++?)
Можно но лучше не использовать, ибо опасно и неудобно...
0
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 19
24.01.2013, 03:05  [ТС]
В 11 строке ошибку пишет, не знает что такое strrev
0
Студент
 Аватар для MickeyBlueEyes
121 / 132 / 39
Регистрация: 07.04.2011
Сообщений: 503
24.01.2013, 03:09
Цитата Сообщение от Avazart Посмотреть сообщение
[CPP] Можно но лучше не использовать, ибо опасно и неудобно...
Ясно, я почему-то щитаю что не нужно ити сложным путём, если можна пойти путём попроще и понятным.
Нащёт безопасности както хз.

Добавлено через 1 минуту
Цитата Сообщение от koks_life Посмотреть сообщение
В 11 строке ошибку пишет, не знает что такое strrev
А что за среда разработки?
Библиотека string.h подключена?

C++
1
#include "string.h"
1
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
24.01.2013, 03:14
Цитата Сообщение от MickeyBlueEyes Посмотреть сообщение
если можна пойти путём попроще и понятным.
Ну сомневаюсь что с char проще...

Цитата Сообщение от MickeyBlueEyes Посмотреть сообщение
Нащёт безопасности както хз.
C++
1
2
 char result[5]; // неподраЩитали
 func("Hello world", &result[0]); //  Упс !!!
0
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 19
24.01.2013, 03:30  [ТС]
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    string words;
    cout<<"Введи текст: ";
    cin>>words;
    reverse(words.begin(), words.end() );
    cout<< words <<endl;
  }
Работает, но до первого пробела -.-"

Среда xCode, библиотека String работает
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
24.01.2013, 03:50
C++
1
2
3
4
5
 string words;
 cout<<"Введи текст: ";
 getline(cin,words);
 reverse(words.begin(), words.end() );
 cout<<words<<endl;
1
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 19
24.01.2013, 04:02  [ТС]
Ништяяяяк) Пасиба большое за помощь
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
24.01.2013, 04:04
http://www.cplusplus.com/refer... m/reverse/
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.01.2013, 04:04
Помогаю со студенческими работами здесь

Перевод C++ на Delphi
Кто может перевести эти функции из с++ на Delphi,Заранее спс... std::string pkcs1pad2(std::string data,size_t keysize) { using...

Перевод из Delphi в C#
Как перевести эту строчку ExtractFilePath(Application.ExeName) в C#

Перевод с С++ на Delphi
Доброго вечера всем, пожалуйста, помогите перевести на Delphi. Необязательно весь код, можно просто суть того, что здесь происходит. int...

Перевод Delphi на С++
Добрый день! Есть код, который написан на делфи. Прошу помощи в переводе его на С++, поскольку с языком программирования делфи не знаком. ...

Перевод из Delphi
Помогите перевести пожалуйста :declare:


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru