Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.05.2010, 13:38   #11
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Гончий
Тебе не кажется что твоя функция Srav уж больно наворочана?
По-моему ее можно очень сильно облегчить, если ты скажешь каковы критерии сравнивания.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 31.05.2010, 14:03   #12
Гончий
Пользователь
 
Регистрация: 29.05.2010
Сообщений: 21
По умолчанию

mrChester

Спасибо, а почему так? В С++ символы строки нумеруются от 0 до "количество символов" - 1?

Stilet
Суть библиотеки - сортировка длинных чисел, поэтому использую строки. А критерии сравнения - просто сортировка по убыванию или возрастанию методом пузырька

Последний раз редактировалось Гончий; 31.05.2010 в 14:05.
Гончий вне форума Ответить с цитированием
Старый 31.05.2010, 14:14   #13
mrChester
Я
Форумчанин
 
Аватар для mrChester
 
Регистрация: 24.04.2010
Сообщений: 693
По умолчанию

Цитата:
Сообщение от Гончий Посмотреть сообщение
В С++ символы строки нумеруются от 0 до "количество символов" - 1?
да, именно так
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©.
mrChester вне форума Ответить с цитированием
Старый 31.05.2010, 14:52   #14
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

char - это символ, соответственно char* - указатель на массив символов (строка), char** - указатель на массив указателей на массив символов (т.е. char** - массив строк).
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 31.05.2010, 15:06   #15
Гончий
Пользователь
 
Регистрация: 29.05.2010
Сообщений: 21
По умолчанию

Всем спасибо, теперь проблем с конвертацией нет)

Осталось две ошибки, обе вот в этой строчке:
if (s1[strlen(s1) - 1] == "0") OneMore = !OneMore;

Ошибки такие:
1. '==': no conversion from 'char*' to 'int'
2. '==': 'int' differs in levels of indirection from 'char[2]'

Вообще не понимаю, почему он строку в число переводит, я хочу взять последний символ из строки
Гончий вне форума Ответить с цитированием
Старый 31.05.2010, 15:41   #16
mrChester
Я
Форумчанин
 
Аватар для mrChester
 
Регистрация: 24.04.2010
Сообщений: 693
По умолчанию

Что ты хочешь проверить этим условием?
Когда проверяешь символы надо ставить не двойные " а одинарные ковычки '
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©.
mrChester вне форума Ответить с цитированием
Старый 31.05.2010, 16:08   #17
Гончий
Пользователь
 
Регистрация: 29.05.2010
Сообщений: 21
По умолчанию

Спасибо, исправил

Последний символ строки будет отвечать у меня за знак числа: 0 - это "+", а 1 - это "-"

Ошибок больше нет, но теперь 3 warnings:
1. "local variable 'kk' used without having been initialized"(но я ведь ее объявил: "int kk")
2. "local variable 'kk' used without having been initialized"(тоже объявлял: "bool Flag")
3. "/OUT: Sort_N_Alg.dll directive in.EXP differs from output filename "Debug/Sortik_Sort_N_Alg.dll"; ignoting directive"
Гончий вне форума Ответить с цитированием
Старый 31.05.2010, 16:14   #18
Syuf
Форумчанин
 
Аватар для Syuf
 
Регистрация: 02.02.2010
Сообщений: 599
По умолчанию

Объявил - это, конечно, хорошо, но такие предупреждения обычно без причины не выскакивают: дело не только в том,что принято у людей всегда инициализировать переменные, иначе в них 'мусор', а также в том, что компилятор считает, что неинициализированные переменные в данном случае при какой-то ситуации могут привести к ошибке.
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."
Syuf вне форума Ответить с цитированием
Старый 31.05.2010, 16:17   #19
mrChester
Я
Форумчанин
 
Аватар для mrChester
 
Регистрация: 24.04.2010
Сообщений: 693
По умолчанию

В общем объяви так
Код:
int kk = 0;
bool Flag = true;
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©.
mrChester вне форума Ответить с цитированием
Старый 31.05.2010, 16:22   #20
Гончий
Пользователь
 
Регистрация: 29.05.2010
Сообщений: 21
По умолчанию

Исправил, спасибо) Переменной kk вообще ничего не присваивал, но использовал О_о Она осталась от предыдущего кода, забыл убрать просто

Осталась третье предупреждение только

Compiling...
Sortik_Sort_N_Alg.cpp
Linking...
Creating library Debug/Sortik_Sort_N_Alg.lib and object Debug/Sortik_Sort_N_Alg.exp
Sortik_Sort_N_Alg.exp : warning LNK4070: /OUT:Sort_N_Alg.dll directive in .EXP differs from output filename "Debug/Sortik_Sort_N_Alg.dll"; ignoring directive
Гончий вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Длл на х32 CrystaLize Общие вопросы C/C++ 1 25.12.2009 17:58
Ошибка в длл Яр|/||< (^_^) Общие вопросы Delphi 2 16.10.2009 15:58
ДЛЛ на gcс Иллидан Общие вопросы C/C++ 1 12.10.2008 22:11
Фрэймы из ДЛЛ SunKnight Общие вопросы Delphi 4 06.01.2008 16:32
Использование длл Anatolij Win Api 1 02.01.2007 19:54