Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Вопрос по С и С++

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
prohorov



Зарегистрирован: 30.03.2007
Сообщения: 1

СообщениеДобавлено: Пт Мар 30 2007 15:59    Заголовок сообщения: Вопрос по С и С++ Ответить с цитатой

Добрый день.

Я написал програмку на
С ( не С++ ), которая
запускается из-под qmail'а.

В файле smtpplugins прописан
запуск Perl-скрипта, а уже из
него запускается эта програмка.

Вот фрагмент текста программы на С :

.....................

char mq[] ="(([a-z0-9]|@|\\-|_|\\.){1,1})";
char mz[] ="(([a-z0-9]|@|\\-|_|\\.){0,})";
int smq =sizeof(mq);
int smz =sizeof(mz);

...

int k=0;
p2[k]=40;

for(i=0;p1[i]>0;i++)
{
k++;

switch(p1[i])
{
case 42: // *
memcpy((char*)p2+k,mz,smz-1);
k=k+smz-2;
continue;
case 63: // ?
memcpy((char*)p2+k,mq,smq-1);
k=k+smq-2;
continue;

.....................


В данном фрагменте создается шаблон
для регулярного выражения.
Символы '*' и '?' заменяются соответственно
на строки mz и mq .

Вопросы :

1. Есть ли стандартные функции в C , которые
позволяют сделать эту замену "по-человечески" ?

2. Я подобным образом ( из-под qmail )
пытался запустить программу на C++ .
Самую простую, маленькую.


Так вот, под root'ом эта программа работала,
а, запущенная из-под smtpplugins->Perl скрипт
возвращала значение "-1", т.е. что-то непонятное.


Вы не могли бы мне подсказать про "стандартные"
функции для шаблонов и про запуск программы на С++ ?

Спасибо !


Прохоров Юрий cosnat@mail.ru
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Jail



Зарегистрирован: 16.01.2007
Сообщения: 180
Откуда: Russia

СообщениеДобавлено: Сб Мар 31 2007 10:43    Заголовок сообщения: Ответить с цитатой

Цитата:
1. Есть ли стандартные функции в C , которые
позволяют сделать эту замену "по-человечески" ?

Таких функций нет, это язык низкого уровня, это вам не Python.
Цитата:
2. Я подобным образом ( из-под qmail )
пытался запустить программу на C++ .
Самую простую, маленькую.
Так вот, под root'ом эта программа работала,
а, запущенная из-под smtpplugins->Perl скрипт
возвращала значение "-1", т.е. что-то непонятное.

С и С++ это не одно и тоже, даже при видимой схожести в синтаксисе! Возможно в данном случае возвращение '-1' из-за отказа в правах доступа. Smile
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...