Например TDA7294

Форум РадиоКот • Просмотр темы - Вопросы по С/С++ (СИ)
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт июн 24, 2025 05:24:35

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 7669 ]    , , 3, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: помогите с поиском ответа ( C си)
СообщениеДобавлено: Пт ноя 12, 2010 11:15:57 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 2
Рейтинг сообщений: 23
Зарегистрирован: Чт апр 08, 2010 18:50:01
Сообщений: 2095
Откуда: Краснодар
Рейтинг сообщения: 0
lix писал(а):
UPD: да. поспешил mpz_init_set_str нужна


mpz_init_set_str (mpz_ptr x, const char *str, int base) :)

трулляля. только вот ошибку все еще выдает, а хочется из ide компилить

_________________
RETI ;рети-рети интеррапт, через шины данных тракт, через память, через порт, возвращайся в главный код
@hobbyelectronics


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: помогите с поиском ответа ( C си)
СообщениеДобавлено: Пт ноя 12, 2010 12:39:16 
Опытный кот

Карма: 5
Рейтинг сообщений: 0
Зарегистрирован: Вс янв 17, 2010 15:32:19
Сообщений: 701
Откуда: Курган
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Кислый писал(а):
в ide выдает эту непонятную ошибку


в какой иде? в настройках проекта надо указать что используется библиотека gmp. ну или в опциях линкеру.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: помогите с поиском ответа ( C си)
СообщениеДобавлено: Пт ноя 12, 2010 12:59:56 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 2
Рейтинг сообщений: 23
Зарегистрирован: Чт апр 08, 2010 18:50:01
Сообщений: 2095
Откуда: Краснодар
Рейтинг сообщения: 0
Code::Blocks IDE
gmp - системная либа.
а вот где ключик -lgmp прописать ?

_________________
RETI ;рети-рети интеррапт, через шины данных тракт, через память, через порт, возвращайся в главный код
@hobbyelectronics


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: помогите с поиском ответа ( C си)
СообщениеДобавлено: Пт ноя 12, 2010 13:06:36 
Опытный кот

Карма: 5
Рейтинг сообщений: 0
Зарегистрирован: Вс янв 17, 2010 15:32:19
Сообщений: 701
Откуда: Курган
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Кислый писал(а):
Code::Blocks IDE
gmp - системная либа.
а вот где ключик -lgmp прописать ?


ниразу не видел эту среду. вот что нашел http://wiki.codeblocks.org/index.php?title=FAQ#Q:_I_would_like_to_compile_a_project_using_some_non-standard_libraries._How_can_I_indicate_to_CodeBlocks_that_these_libraries_and_include_files_exist.3F


Вернуться наверх
 
В продаже новые LED-драйверы XLC компании MEAN WELL с диммингом нового поколения

Компания MEAN WELL пополнила ассортимент своей широкой линейки светодиодных драйверов новым семейством XLC для внутреннего освещения. Главное отличие – поддержка широкого спектра проводных и беспроводных технологий диммирования. Новинки представлены в MEANWELL.market моделями с мощностями 25 Вт, 40 Вт и 60 Вт. В линейке есть модели, работающие как в режиме стабилизации тока (СС), так и в режиме стабилизации напряжения (CV) значением 12, 24 и 48 В.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Сб ноя 13, 2010 15:53:10 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 2
Рейтинг сообщений: 23
Зарегистрирован: Чт апр 08, 2010 18:50:01
Сообщений: 2095
Откуда: Краснодар
Рейтинг сообщения: 0
lix,
Код:
mpz_init_set_str (mpz_ptr x, const char *str, int base)


base это у нас система счисления. верно ? т.е. :
base = 10, и можно использовать символы 0..9
base = 16, и можно использовать символы 16-иричной системы 0..F
а если мне нужно закодить например слово MAMA, то чему должно равняться base ? по логике вещей base = 256. да вот незадача.. выводит ошибку вроде
Цитата:
Исключение в операции с плавающей точкой

_________________
RETI ;рети-рети интеррапт, через шины данных тракт, через память, через порт, возвращайся в главный код
@hobbyelectronics


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Сб ноя 13, 2010 17:14:26 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 2
Рейтинг сообщений: 23
Зарегистрирован: Чт апр 08, 2010 18:50:01
Сообщений: 2095
Откуда: Краснодар
Рейтинг сообщения: 0
хмм.. max base = 32 :?

_________________
RETI ;рети-рети интеррапт, через шины данных тракт, через память, через порт, возвращайся в главный код
@hobbyelectronics


Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Сб ноя 13, 2010 18:40:12 
Опытный кот

Карма: 5
Рейтинг сообщений: 0
Зарегистрирован: Вс янв 17, 2010 15:32:19
Сообщений: 701
Откуда: Курган
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
я не понял, нафиг это все надо? gmp - это либа для работы с очень большими числами, например, для криптографии. кодировать этим слова... малость не то применение.

надо еще раз трэд прочитать...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Сб ноя 13, 2010 19:30:17 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 2
Рейтинг сообщений: 23
Зарегистрирован: Чт апр 08, 2010 18:50:01
Сообщений: 2095
Откуда: Краснодар
Рейтинг сообщения: 0
ну дык.. не я это придумал. если в либе есть соответствующие функции (rsa) то почему бы и не воспользоваться ?

_________________
RETI ;рети-рети интеррапт, через шины данных тракт, через память, через порт, возвращайся в главный код
@hobbyelectronics


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Сб ноя 13, 2010 20:21:01 
Опытный кот

Карма: 5
Рейтинг сообщений: 0
Зарегистрирован: Вс янв 17, 2010 15:32:19
Сообщений: 701
Откуда: Курган
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Кислый писал(а):
ну дык.. не я это придумал. если в либе есть соответствующие функции (rsa) то почему бы и не воспользоваться ?


нет в gmp rsa, в ней есть функции, позволяющие реализовать rsa (умножение, деление по модулю). надо использовать другую либу, например openssl.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Сб ноя 13, 2010 20:48:03 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 2
Рейтинг сообщений: 23
Зарегистрирован: Чт апр 08, 2010 18:50:01
Сообщений: 2095
Откуда: Краснодар
Рейтинг сообщения: 0
ВАЖНО и с ВАФОСОМ : вот давайте не будем спорить.. :))

_________________
RETI ;рети-рети интеррапт, через шины данных тракт, через память, через порт, возвращайся в главный код
@hobbyelectronics


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Сб ноя 13, 2010 22:05:36 
Опытный кот

Карма: 5
Рейтинг сообщений: 0
Зарегистрирован: Вс янв 17, 2010 15:32:19
Сообщений: 701
Откуда: Курган
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Кислый писал(а):
ВАЖНО и с ВАФОСОМ : вот давайте не будем спорить.. :))

да пожалуйста :)
только в мануале к gmp я не нашел ни одной функции прямо относящейся к шифрованию.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Вт ноя 16, 2010 20:46:33 
Мудрый кот
Аватар пользователя

Карма: 25
Рейтинг сообщений: 79
Зарегистрирован: Вт окт 05, 2010 01:08:57
Сообщений: 1800
Рейтинг сообщения: 0
Извините, за "новое слово в языке Си" :))) :))) :))) но возможно ли как нибудь, применение русских букв в CИ, в частности в #define
например
Код:
 #define   Ё  14
#define   Ж  16
#define   И  18
#define   К  20

text [4] = {Ё,Ж,И,К}


Наверное бред, но нужно закодировать кучу массивов содержащих русский текст, и былобы очень удобно "задефинить" все русские буквы, а потом просто собирать массивы русскими буквами

_________________
KIT


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Вт ноя 16, 2010 23:00:08 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 98
Рейтинг сообщений: 2116
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18397
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
O-LED писал(а):
Извините, за "новое слово в языке Си" :))) :))) :))) но возможно ли как нибудь, применение русских букв в CИ, в частности в #define
например
Код:
 #define   Ё  14
#define   Ж  16
#define   И  18
#define   К  20

text [4] = {Ё,Ж,И,К}


Наверное бред, но нужно закодировать кучу массивов содержащих русский текст, и былобы очень удобно "задефинить" все русские буквы, а потом просто собирать массивы русскими буквами

насколько я в курсе, нет компиляторов для AVR, поддерживающих подобные дефайны, хотя по слухам для компьютера MS VC такой финт допускет...

но скажите, зачем вам это?! ведь строка в Си инициализируется самым тривиальным способом:
Код:
char text[] = "ЁЖИК";

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Вт ноя 16, 2010 23:20:29 
Мудрый кот
Аватар пользователя

Карма: 25
Рейтинг сообщений: 79
Зарегистрирован: Вт окт 05, 2010 01:08:57
Сообщений: 1800
Рейтинг сообщения: 0
чему тогда у меня будет равно например text[2] ???

_________________
KIT


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Вт ноя 16, 2010 23:27:55 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 98
Рейтинг сообщений: 2116
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18397
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
O-LED писал(а):
чему тогда у меня будет равно например text[2] ???

ну едрен-батон! вы Си хоть мало-мало изучали? если char text[] = "ЁЖИК"; то text[2] равно 'И'

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Ср ноя 17, 2010 00:34:27 
Мудрый кот
Аватар пользователя

Карма: 25
Рейтинг сообщений: 79
Зарегистрирован: Вт окт 05, 2010 01:08:57
Сообщений: 1800
Рейтинг сообщения: 0
Так я в Си самоучка, учусь не по нотам а на слух, там подслушаю, там подсмотрю)))))
про такую возможность объявления переменных не знал.
А скажите, как тогда мне лучше объявить массив в котором используются только элементы с 192 по 223, а остальные не нужны (у знаков А-Я код 192-223) ?
Спасибо.


зы. какую книгу по Си для микроконтроллеров порекомендуете??

_________________
KIT


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Ср ноя 17, 2010 01:09:36 
Опытный кот
Аватар пользователя

Карма: 7
Рейтинг сообщений: 52
Зарегистрирован: Чт дек 31, 2009 19:27:45
Сообщений: 842
Откуда: Бровари, Україна
Рейтинг сообщения: 0
ARV писал(а):
Код:
text [4] = {Ё,Ж,И,К}

...
но скажите, зачем вам это?! ведь строка в Си инициализируется самым тривиальным способом:
Код:
char text[] = "ЁЖИК";
Кстати, если строго, то полным аналогом посимвольной инициаизации со скобками { } будет
Код:
char text[4] = "ЁЖИК";

Код:
char text1[4] = {Ё,Ж,И,К}; // тут 4 можно было и не указывать, всё равно было бы 4
char text2[] = "ЁЖИК"; // тут в массиве будет ограичитель '\0' и будет 5 элементов массива
char text3[4] = "ЁЖИК"; // а тут ограничителя не будет, массив размером 4 элемента
Иногда удобно, экономит место.
O-LED писал(а):
А скажите, как тогда мне лучше объявить массив в котором используются только элементы с 192 по 223, а остальные не нужны (у знаков А-Я код 192-223) ?
Ну как-то так:
Код:
enum { start_char = 'А', end_char = 'Я', total_chars = end_char - start_char +1 };
const char array[total_chars] = { ... };

inline char get_from_array( char ch)
{
    if( ch < start_char || ch > end_char ) return ch; // при уверенности в том, что не передадут «запредельное», эту строку можно и убрать
    return array[ ch - start_char ];}
Задумчиво, но иначе никак не сэкономить на массиве. Это не паскаль, чтобы границы индекса массива указать. Хотя паскаль тут только строки текста программы сэкономит, в коде лучше не будет.

O-LED писал(а):
зы. какую книгу по Си для микроконтроллеров порекомендуете??
И чернила для 8-го класса.
Сначала нужна книжка по языку С, чтобы в голове порядок был. Потом в документации на конкретнй компилятор смотреть его расширения и отклонения от стандарта.
Кстати, у тех компьютеров, на которых С рождался, было 64 килобайта адресного пространства, после вычета зоны устройств оставалось максимум 56К под код и данные, а на целевой машине могло оказаться и 8К. atmega64 уже больше имеет, чем тогда было максимум, atmega8-atmega16 имеют столько, сколько тогда было в типичной управляющей машинке.

_________________
Лень в виде мании величия: «ты гений, зачем стараться?». В виде комплекса: «всё равно не выйдет, зачем упираться?». Как логика: «если достаточно, зачем знать и уметь больше?». Цель одна: остановить. Не любит тепло работающих мышц и шум работающего мозга.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Ср ноя 17, 2010 07:36:52 
Опытный кот
Аватар пользователя

Зарегистрирован: Вс янв 18, 2009 21:12:49
Сообщений: 703
Рейтинг сообщения: 0
avreal писал(а):
Код:
char text1[4] = {Ё,Ж,И,К}; // тут 4 можно было и не указывать, всё равно было бы 4
char text2[] = "ЁЖИК"; // тут в массиве будет ограичитель '\0' и будет 5 элементов массива
char text3[4] = "ЁЖИК"; // а тут ограничителя не будет, массив размером 4 элемента
Иногда удобно, экономит место.

А Вы проверяли это? А что за компилятор, который позволяет так делать?

По стандарту Си рабочий, в этом примере, только второй массив. В первом нужно символы заключать в одинарные кавычки, а третий ругнётся на размерность. Во все строки, а строка это двойные кавычки, компилятор должен помещать конец строки '\0'.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Ср ноя 17, 2010 09:58:43 
Друг Кота
Аватар пользователя

Карма: 67
Рейтинг сообщений: 1060
Зарегистрирован: Чт сен 18, 2008 12:27:21
Сообщений: 19638
Откуда: Столица Мира Санкт-Петербург
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
avreal писал(а):
Кстати, если строго, то полным аналогом посимвольной инициаизации со скобками { } будет
Код:
char text[4] = "ЁЖИК";

А как же символ конца строки '\0'?

_________________
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Измерить нннада?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Вопросы по С/С++ (СИ)
СообщениеДобавлено: Ср ноя 17, 2010 19:45:56 
Опытный кот
Аватар пользователя

Карма: 7
Рейтинг сообщений: 52
Зарегистрирован: Чт дек 31, 2009 19:27:45
Сообщений: 842
Откуда: Бровари, Україна
Рейтинг сообщения: 0
asteroid7 писал(а):
А Вы проверяли это? А что за компилятор, который позволяет так делать?
По стандарту Си рабочий, в этом примере, только второй массив. В первом нужно символы заключать в одинарные кавычки, а третий ругнётся на размерность. Во все строки, а строка это двойные кавычки, компилятор должен помещать конец строки '\0'.
Ой, ну с одинарными кавычками — это просто среди ночи тупо копипастнул и не поправил, извините уж. В добитых своей рукой коментаиях '\0' в кавычки взял, а там — не исправил.

А что касается третьего массива — его обязан делать любой компилятор, претендующий на звание компилятора языка С.

По стандарту ANSI C89 (в более поздних другой номер параграфа, в ISO C99 это параграф 6.7.8 пункт 32, а стандарт ISO C90 == ANSI C89) строка как инициализатор ведёт себя не так, как строка-литерал. В литералах, имеющих тип char*, отсылающий к неявному массиву char[], концевой '\0' гарантируется, в инициализаторах — явно заданный размер массива может «не пустить» этот ноль в массив.
Цитата:
3.5.7 Initialization
...
Finally, the declaration
char s[] = "abc", t[3] = "abc";
defines ``plain'' char array objects s and t whose members are initialized with character string literals. This declaration is identical to
char s[] = { 'a', 'b', 'c', '\0' }, t[] = { 'a', 'b', 'c' };
А вот в C++ так нельзя и это одно из тонких отличий между языками :-)

_________________
Лень в виде мании величия: «ты гений, зачем стараться?». В виде комплекса: «всё равно не выйдет, зачем упираться?». Как логика: «если достаточно, зачем знать и уметь больше?». Цель одна: остановить. Не любит тепло работающих мышц и шум работающего мозга.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 7669 ]    , , 3, , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 17


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y