Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Работа со строками

10K
30 июня 2005 года
Anyas
22 / / 30.06.2005
Имеется строка типа:
Вася, пошёл ты на деревню и в сарай!
и шаблон типа:
%X, пошёл ты на %Y и в %Z !
Нужно извлечь из строки %X,%Y,%Z...

Типа как триггеры в MUD-клиентах.
заранее спасибо.
1.9K
30 июня 2005 года
sercher
60 / / 21.03.2003
Цитата:
Originally posted by Anyas
Имеется строка типа:
Вася, пошёл ты на деревню и в сарай!
и шаблон типа:
%X, пошёл ты на %Y и в %Z !
Нужно извлечь из строки %X,%Y,%Z...

Типа как триггеры в MUD-клиентах.
заранее спасибо.



sscanf(buf, "%s, пошёл ты на %s и в %s !", name, dest1, dest2);

10K
01 июля 2005 года
Anyas
22 / / 30.06.2005
Цитата:
Originally posted by sercher
sscanf(buf, "%s, пошёл ты на %s и в %s !", name, dest1, dest2);


Спасибо конечно, но твой пример не будет работать из-за запятой после %s.
Я уже ето пробовал. дело в том, что для использования sscanf надо и шаблон и строку разбить пробелами на паттерны.
%s=%s(%s) << допустим здесь можно разделить
x=sin(y) << а здесь никак :(
а без пробелов не хочет работать собака...

10K
01 июля 2005 года
Anyas
22 / / 30.06.2005
Идея вот в чём.
Имеется коммандный интерпретатор с синтаксисом типа
#cmd1 'param1' 'param2'
#cmd2 'param1' 'param2' 'param3'
В его препроцессор вносится обработка шаблонов типа
#proc '%x;%y' //теперь можно писать через ;
%x
%y
#endp
#proc '%x=%y' //оператор присваивания
#math 'tmp' '%y'
#set '%x' '%tmp%'
#endp
таким образом получаем язык с динамическим синтаксисом.
472
04 июля 2005 года
Vovka
139 / / 10.02.2005
Цитата:
Originally posted by Anyas
Спасибо конечно, но твой пример не будет работать из-за запятой после %s.
Я уже ето пробовал. дело в том, что для использования sscanf надо и шаблон и строку разбить пробелами на паттерны.
%s=%s(%s) << допустим здесь можно разделить
x=sin(y) << а здесь никак :(
а без пробелов не хочет работать собака...


А что если перед
sscanf(buf, "%s, пошёл ты на %s и в %s !", name, dest1, dest2);
обработать строку, добавив где нужно пробеллы???

10K
05 июля 2005 года
Anyas
22 / / 30.06.2005
Цитата:
Originally posted by Vovka
А что если перед
sscanf(buf, "%s, пошёл ты на %s и в %s !", name, dest1, dest2);
обработать строку, добавив где нужно пробеллы???



Не, а как именно я узнаю, где нужно ставить пробелы в строке? В этом то всё и дело. Я могу разделить пробелами шаблон, заменяя "%s" на " %s " а вот со СТРОКОЙ проблема. например:
шаблон
if {%s}={%s} then {%s} # Всё понятно
строка
if {tg(49)}={sin(49)/cos(49)} then {goto b} #куда ставить пробел?

351
05 июля 2005 года
PitxBull
633 / / 22.12.2004
Цитата:
Originally posted by Anyas
Не, а как именно я узнаю, где нужно ставить пробелы в строке? В этом то всё и дело. Я могу разделить пробелами шаблон, заменяя "%s" на " %s " а вот со СТРОКОЙ проблема. например:
шаблон
if {%s}={%s} then {%s} # Всё понятно
строка
if {tg(49)}={sin(49)/cos(49)} then {goto b} #куда ставить пробел?



Попробуй регулярные выражения. CAtlRegExp. Хотя размышляя чисто теоретически( не вникая в постановку задачи ), я бы сделал парсер на основе паттерна StateMachine, с динамическими добавляемыми состояними.

:)))))))

10K
05 июля 2005 года
Anyas
22 / / 30.06.2005
спасиб за хлопоты. я нашол ответ в исходниках Java MUD Client, и зделал класс. каму это интересно, могу выложить, или пишите mailto:growbox@inbox.ru
472
05 июля 2005 года
Vovka
139 / / 10.02.2005
Цитата:
Originally posted by Anyas
спасиб за хлопоты. я нашол ответ в исходниках Java MUD Client, и зделал класс. каму это интересно, могу выложить, или пишите mailto:growbox@inbox.ru


А сюда валожить не можешь?
Я думаю, что многим будет интересно...
Хотя есть и CAtlRegExp

10K
24 августа 2005 года
Anyas
22 / / 30.06.2005
Цитата:
Originally posted by Vovka
А сюда валожить не можешь?
Я думаю, что многим будет интересно...
Хотя есть и CAtlRegExp



Конечно же могу...

//-------------------------BEGIN TTRIGGER---------------------------
class TTrigger {
public:
TTrigger() {
//cout << "Class Hash initialized !!!" << endl;
//Cnt=0;
}
~TTrigger() {
//cout << "Class Hash destructed !!!" << endl;
}
int match_a_string(char *line, char *mask);
int check_a_action(char *line, char *action);
int Compilee(char *line, char *action);
int var_len[10];
char *var_ptr[10];
char Argum[MAXARG][MAXC];
int Count;
//int Cnt;
//HashInfo HS[200];
private:
};
TTrigger::match_a_string(char *line, char *mask)
{
char *lptr, *mptr;
lptr=line;
mptr=mask;
while (*lptr && *mptr && !(*mptr=='%' && isdigit(*(mptr+1)))) {
if (*lptr++!=*mptr++)
return -1;
}
if (!*mptr || (*mptr=='%' && isdigit(*(mptr+1)))) {
return (int)(lptr-line);
}
return -1;
}

TTrigger::Compilee(char *line, char *action)
{
if (check_a_action(line,action)==1)
{
for (int i=1;var_len>0;i++)
{
Count = i;
lstrcpyn(&Argum[0],var_ptr,var_len+1);
//printf("Compilee: %s\n",Argum);
}
return 1;
}
else
{
return 0;
}

}

/***************************************************
* Проверка соответствия строки триггеру
***************************************************/
TTrigger::check_a_action(char *line, char *action)
{
/*--1--*/
//int var_len[10];
//char *var_ptr[10];
/*--1--*/
char result[MAXC];
char *temp2, *tptr, *lptr, *lptr2;
int i,flag_anchor, len, flag;
for (i=0; i<10; i++) var_len=-1;
flag_anchor=FALSE;
lptr=line;
//substitute_myvars(action,result);
lstrcpy(&result[0],action);
tptr=result;
if(*tptr=='^') {
tptr++;
flag_anchor=TRUE;
/* CHANGED to fix a bug with #action {^%0 foo}
* Thanks to Spencer Sun for the bug report (AND fix!)
if (*tptr!=*line)
return FALSE;
*/
}
if (flag_anchor) {
if ((len=match_a_string(lptr, tptr))==-1)
return FALSE;
lptr+=len;
tptr+=len;
}
else {
flag=TRUE;
len=-1;
while(*lptr && flag) {
if((len=match_a_string(lptr, tptr))!=-1) {
flag=FALSE;
}
else
lptr++;
}
if (len!=-1) {
lptr+=len;
tptr+=len;
}
else
return FALSE;
}
while(*lptr && *tptr) {
temp2=tptr+2;
if (!*temp2) {
var_len[*(tptr+1)-48]=strlen(lptr);
var_ptr[*(tptr+1)-48]=lptr;
return TRUE;
}
lptr2=lptr;
flag=TRUE;
len=-1;
while(*lptr2 && flag) {
if ((len=match_a_string(lptr2, temp2))!=-1) {
flag=FALSE;
}
else
lptr2++;
}
if (len!=-1) {
var_len[*(tptr+1)-48]=lptr2-lptr;
var_ptr[*(tptr+1)-48]=lptr;
lptr=lptr2+len;
tptr=temp2+len;
}
else {
return FALSE;
}
}
if (*tptr)
return FALSE;
else
return TRUE;
}
//-------------------------------END TTRIGGER---------------------------------

Была тут небольшая проблема с инетом, но теперь всё на полном позитиве АДСЛ+Спутник рулит!

3
24 августа 2005 года
Green
4.8K / / 20.01.2000
Цитата:
Originally posted by Anyas
Конечно же могу...

//-------------------------BEGIN TTRIGGER---------------------------
<skip>
<skip>
<skip>
//-------------------------------END TTRIGGER---------------------------------



Если бы ты писал на С++ код был бы более читабелен, а главное корректен.

10K
25 августа 2005 года
Anyas
22 / / 30.06.2005
Цитата:
Originally posted by Green
Если бы ты писал на С++ код был бы более читабелен, а главное корректен.


А это тебе чо паскаль что-ли? Или может быть модула-2? Если ты, обожравшись колёс не можешь определить язык, на котором написан код, в этом виноват только ты, и никто другой.

3
25 августа 2005 года
Green
4.8K / / 20.01.2000
Цитата:
Originally posted by Anyas
А это тебе чо паскаль что-ли? Или может быть модула-2? Если ты, обожравшись колёс не можешь определить язык, на котором написан код, в этом виноват только ты, и никто другой.


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

Тот уродственный код, который ты представил, написан на жалком гибриде С и С++.

Доказательства?
1. В С++ вопределении методов нужно указывать возвращаемый тип.
2. В С++ вместо массивов, размерность которых взята с потолка, используются контейнеры.
3. В С++ вместо символьных массивов используется класс std::string.
4. В С++ для операций со строками используются методы std::string.
5. В С++ преобразование типов используются конкретные кастинг-операторы.
6. В С++ не чередуются использование std::cout и printf.
В С++ вообще желательно использовать std::cout.
Ну и т.д.

Ну и мои замечания:
1. Вместо закомментирования/раскоментирования отладочных строк, можно применять директивы предкомпилятора.
2. Данные класса лучше делать закрытыми.
3. Если уж передавать char* в методы, то уж const char*
4. Трудночитаемый код, особенно в части условий.
5. Слишком длинные, разветвленные методы. Я бы их нарезал на более мелкие логически законченные.
5. Лучше придерживаться одного стиля именования (переменных, методов и т.п.).
6. FALSE и TRUE, как-то не увязывается с int, не лучше ли использовать bool и false и true соотв-но?
7. "Порадовало" вот это:
if (*tptr)
return FALSE;
else
return TRUE;

Ну и т.д.

299
25 августа 2005 года
3D Bob
885 / / 18.04.2005
Green Респект.
Уважаю людей которые программируюет не так чтобы работало, а которые следят за стилем, ресурсами, занимаемой памятью, гибкостью , и устойчивости.
10
25 августа 2005 года
Freeman
3.2K / / 06.03.2004
Цитата:
Originally posted by 3D Bob
Уважаю людей которые программируюет не так чтобы работало, а которые следят за стилем, ресурсами, занимаемой памятью, гибкостью , и устойчивости.


Знаешь, практика показывает, что правильно писать проще всего. Достаточно правильно начать, и продолжать можно будет только также правильно. Как только идешь на компромисс - рано или поздно он вылезет боком.

10K
27 августа 2005 года
Anyas
22 / / 30.06.2005
Цитата:
Originally posted by Green
Спокойнее! А то я уж подумываю, что кроме культуры программирования ты не обладаешь и культурой общения.


* Я просто ненавижу кретинов, которые превращают форумы по программированию в цирк или шоу уродов(как тебе лучше нравится). По видимому желание кого-то обо**ать - это просто попытка самоутвердится или показать себя круче в глазах других. Если это самоцель - иди на udaff.com, или obosr.ru, может быть больше понравится.

Цитата:
Originally posted by Green
Тот уродственный код, который ты представил, написан на жалком гибриде С и С++.


* Ты слишком невнимателен. Я написал, что этот код написал по большей части не я, а автор Java MUD Client. Отличная для своих целей прога, если кто и имел к ней притензии, то только по части недостатка возможностей.
* насчёт чередования cout и printf - как видиш, cout закоментирован, и откуда ты знаеш, закоментирован ли iostream? Опять же невнимательность.
* С чего ты вообще взял, что размерность массивов взята с потолка?
* Я не пытался сделать код удобочитаемым. Лично для меня он понятен, если он трудночитаем для тебя -это твои проблемы.
* Короче, все твои замечания - попытка навязать мне твой стиль программирования. Наверное ты имеешь в\о и гордишся своими оценками в дипломе. Это твоя личная прирогатива, Но мне как и остальным на это глубоко по барабану. Каждый программирует как хочет, тем более если код на 100% работоспособен.

Цитата:
Originally posted by Freeman
Знаешь, практика показывает, что правильно писать проще всего. Достаточно правильно начать, и продолжать можно будет только также правильно. Как только идешь на компромисс - рано или поздно он вылезет боком.


Freeman, ты чертовски прав. "Программирование по правилам" зачастую накладывает такие рамки, что из-за какой-то мелкой детали приходится переделывать всё заново. ЭТО СОВЕРШЕННО НЕПРОДУКТИВНО.

299
27 августа 2005 года
3D Bob
885 / / 18.04.2005
Твой код работает, потому что разработчки поставили защиту от дураков.
Была попытка научить грамотно писать.

Знаешь, любой человек стопроцетно поймет и одинаково воспримет фразы

1. Мне понравилось.
2. Афтор пиши исЧо


Но, культурный человек первого способа никогда употреблять не будет.

Я прифигел сам когда увидел int = false/true
УТЕЧКА памяти, и пофигу работает код или нет.
int занимает 4 байта. bool один байт. Чуешь разницу?
Именно из-за таких как ты ВИНДА такая херовая!
Она работает... но все знают КАК она работает.

Не уважаю программистов программирующих и оринтирующихся только на то чтобы работало. Это ЛЕНТЯИ.
10K
27 августа 2005 года
Anyas
22 / / 30.06.2005
Цитата:
Originally posted by 3D Bob
Твой код работает, потому что разработчки поставили защиту от дураков.


Ага, тока где же она?

Цитата:
Originally posted by 3D Bob
Была попытка научить грамотно писать.

ГЫ :))

Цитата:
Originally posted by 3D Bob
2. Афтор пиши исЧо

Да, исЧо да пАбольше писякай сЦ**а!

Цитата:
Originally posted by 3D Bob
Я прифигел сам когда увидел int = false/true

мАлАдетс. Здесь ты конечно прав, 3 байта - это очень много. Столько занимает в памяти моё любимое слово из трёх букв - МИР.

Цитата:
Originally posted by 3D Bob
Именно из-за таких как ты ВИНДА такая херовая!
Она работает... но все знают КАК она работает.

Дааа! Именно такие как я делают винду такой херовой, чтобы такие как ты горькими слезами обливались, и матерясь на всех подряд спивались с горя, просиживая долгими ночами за мониторами упавших серваков, пока такие как я строят заводы по производству антигемороидальных свечей по 5$ за пачку. И нет бы бросить это дело и проинсталить какую-нибудь там полуось, которая к тому же ещё и дешевле, такие как ты буквально насилуя самих себя ставят новые и новые версии этих мерзких виндов, просаживая всю зарплату на антигемороидальные свечи...

3
28 августа 2005 года
Green
4.8K / / 20.01.2000
Цитата:
Originally posted by Anyas
* Я просто ненавижу кретинов, которые превращают форумы по программированию в цирк или шоу уродов(как тебе лучше нравится).


Не ты первый...
Только шоу уродов устраивают тебе подобные.
Один из таких уродцев несколькими постами выше, - твой код.
А уж укрощение тахих уродцев привращается в цирк благодаря ретивости своих авторов.

Цитата:
Originally posted by Anyas

* Ты слишком невнимателен.


Хорошая отмазка прикрыть криворукость...

Цитата:
Originally posted by Anyas

* насчёт чередования cout и printf - как видиш, cout закоментирован, и откуда ты знаеш, закоментирован ли iostream? Опять же невнимательность.


А может нечистоплотность автора?

Цитата:
Originally posted by Anyas

* С чего ты вообще взял, что размерность массивов взята с потолка?


Потому что размерности заданы числовыми литералами, кратными 10, без объяснения перичин и методики расчета.
Докажи обратное... в коде.

Цитата:
Originally posted by Anyas

Я написал, что этот код написал по большей части не я, а автор Java MUD Client.


Цитата:
Originally posted by Anyas

* Я не пытался сделать код удобочитаемым. Лично для меня он понятен, если он трудночитаем для тебя -это твои проблемы.


Да нет... это твои проблемы.
Ты выложил код на всеобщее обозрение, будь так бобр, убрать из него своё дерьмо, умыть и причасать, а не валить всё на другого автора.

Цитата:
Originally posted by Anyas

* Короче, все твои замечания - попытка навязать мне твой стиль программирования.


Это называется "делиться опытом".

Цитата:
Originally posted by Anyas

Наверное ты имеешь в\о и гордишся своими оценками в дипломе. Это твоя личная прирогатива,


Да все знают, что я тринадцатилетний (вот уже какой год) хАцКеР из Усть-Урюпинска.

Цитата:
Originally posted by Anyas

Но мне как и остальным на это глубоко по барабану. Каждый программирует как хочет, тем более если код на 100% работоспособен.


Прикинь, если бы все строили самолеты и ядерные станции так, как хочет...

Цитата:
Originally posted by Anyas

Freeman, ты чертовски прав. "Программирование по правилам" зачастую накладывает такие рамки, что из-за какой-то мелкой детали приходится переделывать всё заново. ЭТО СОВЕРШЕННО НЕПРОДУКТИВНО.


Ага, назыается РЕФАКТОРИНГ.
Очень продуктивно, если не рефакторишь помойку, как у тебя.

10K
28 августа 2005 года
Anyas
22 / / 30.06.2005
Цитата:
Originally posted by Green
Не ты первый...
Только шоу уродов устраивают тебе подобные.
Один из таких уродцев несколькими постами выше, - твой код.
А уж укрощение тахих уродцев привращается в цирк благодаря ретивости своих авторов.


Я вот всё гадаю, чего же ты там обожрался? Помоему это всё-таки была барбитура...

Цитата:
Originally posted by Green
Да нет... это твои проблемы.
Ты выложил код на всеобщее обозрение, будь так бобр, убрать из него своё дерьмо, умыть и причасать, а не валить всё на другого автора.


* Да я ничего на афтора и не валил, алгоритм который он предложил, это именно то, что и было мне нужно. И очень харашо, что он не юзает разные там std::blablabla, ты бы ещё предложил мне МФЦ подключить! Я ваще хочу потом stdlib отключить и всё на чистый API перевести.
* http://jmc.mud.ru/ Здесь сайт афтора этой проги,здесь же лежит полный её исходник. если те не нравицца чото скажи ему об этом.

Цитата:
Originally posted by Green
Это называется "делиться опытом".


Помоему это называется страдать хернёй. Конечно, в коде есть парочка недочётов, но они не настолько существенны, чтобы повлиять на БЫСТРОДЕЙСТВИЕ или ОТКАЗОУСТОЙЧИВОСТЬ.

Цитата:
Originally posted by Green
Да все знают, что я тринадцатилетний (вот уже какой год) хАцКеР из Усть-Урюпинска.


Анекдот в тему:
- У нас сегодня на работе один чел сервак сломал.
- Он чо, хакер?
- Он кретин!

Цитата:
Originally posted by Green
Прикинь, если бы все строили самолеты и ядерные станции так, как хочет...


И строют! Ну конечно, не АЭС, но самолёты строят. А их идеи потом продают за $$$.

Цитата:
Originally posted by Green
Ага, назыается РЕФАКТОРИНГ.
Очень продуктивно, если не рефакторишь помойку, как у тебя.

Очень продуктивно... Переписывать прогу по 10 раз, а если у тя там 10-20К строк?

3
28 августа 2005 года
Green
4.8K / / 20.01.2000
Цитата:
Originally posted by Anyas
Я вот всё гадаю, чего же ты там обожрался?


А ты не гадай, и так умственного ресурса на другие вещи в дефиците.

Цитата:
Originally posted by Anyas

И очень харашо, что он не юзает разные там std::blablabla, ты бы ещё предложил мне МФЦ подключить!


А при чем тут MFC?
Я говорил о С++.
STL является частью стандарта С++, MFC - нет.

Цитата:
Originally posted by Anyas

Я ваще хочу потом stdlib отключить и всё на чистый API перевести.


:D :D

Цитата:
Originally posted by Anyas

Помоему это называется страдать хернёй.


Ну чтож делать, если написанная горе-программистами херня, действительно, приводит к страданиям переписывания по-человечески.

Цитата:
Originally posted by Anyas

Конечно, в коде есть парочка недочётов, но они не настолько существенны, чтобы повлиять на БЫСТРОДЕЙСТВИЕ или ОТКАЗОУСТОЙЧИВОСТЬ.


А как на счет читабельности и рациональности?

Цитата:
Originally posted by Anyas

Очень продуктивно... Переписывать прогу по 10 раз, а если у тя там 10-20К строк?


С опытом ты поймешь, что продуктивно.

13K
28 августа 2005 года
ThiefX
6 / / 19.08.2005
Мда!!!!! Вот и выложил человек прогу на всеобщее обозрение!!!! :)
299
28 августа 2005 года
3D Bob
885 / / 18.04.2005
Цитата:
Originally posted by ThiefX
Мда!!!!! Вот и выложил человек прогу на всеобщее обозрение!!!! :)



Все притензии к вовке))) Это он попросил=))))))):D :D :D :D

488
28 августа 2005 года
Mоngооsе
465 / / 01.04.2005
Задачу решает
 
Код:
char c[]="%s, пошёл ты на %s и в %s!";
 char buf[256];
 sprintf(buf, c, "Саня", "дерево", "сарай");
 AfxMessageBox(buf);
299
29 августа 2005 года
3D Bob
885 / / 18.04.2005
Цитата:
Originally posted by Mоngооsе
Задачу решает
 
Код:
char c[]="%s, пошёл ты на %s и в %s!";
 char buf[256];
 sprintf(buf, c, "Саня", "дерево", "сарай");
 AfxMessageBox(buf);



Не решает. Эффект должен быть как раз таки обратным.

3
29 августа 2005 года
Green
4.8K / / 20.01.2000
Цитата:
Originally posted by ThiefX
Мда!!!!! Вот и выложил человек прогу на всеобщее обозрение!!!! :)


Дело то не в программе, а в хамстве, которое он выставил на всеобщее обозрение.

10K
31 августа 2005 года
Anyas
22 / / 30.06.2005
Цитата:
Originally posted by 3D Bob
Все притензии к вовке))) Это он попросил=)))))))


Вовка, а самому чё, слабо?

Цитата:
Originally posted by Green
Дело то не в программе, а в хамстве, которое он выставил на всеобщее обозрение.

Помоему в форуме обсуждаются не личности а програмиирование на Ц++... Ах, да! Ты видимо тоже допёр до этого факта, и решил абасрать не меня, а прогу. Ей-то это абсолютно похер, она работает и кушать не просит, впрочем как и мне. Если хамство и имело место быть, то оно есть продукт вашего хамства\наглости. Единственное путное и чем-то обоснованное замечание это про int=true/false, за него спасибо, уже исправлено. Исчо раз насчёт херовости виндов: на самом-то деле в ненавистном мелкософте работают люди не такие как я, и даже не такие как ты, а программисты высшего класса, которые досканально знают язык и всю виндовую архитектуру, вплоть до вызовов аппаратных прерываний. Но даже всего их персонала вместе с бетатестерами не хватит, штобы исправить все многочисленные уязвимости. Никсы со своим опенсаурсом с самого начала завоевали статус надёжных платформ, потому что миллионы админов каждый день вносят в это свою лепту. Все помнят тот самый msblast, который появился после того как у МС скомуниздили часть кода Вин2к. Причина заглюченности винды - исключистельно экономическая политика руководства МС. Смирившись с этим фактом, хочу сказать, что задача таких форумов как этот - исправлять глюки винды, а не кидаться замечаниями типа "сколько соли вы положили в мой кофэ?". 3D Bob, если автор твоего любимого QIP-сексуальный маньяк, ты же не будеш писать ему в саппорт. Если нормально, без высокомерия общаться, то никто не будет хамить, а тут кинул, понимаеш пару строчек НЕ СВОЕГО, к томуже кода и понеслась п***а по кочкам.
Green, вудь всё-таки осторожен, ибо до добра не доводит барбитура.

3
01 сентября 2005 года
Green
4.8K / / 20.01.2000
"И тут Остапа понесло..."
Цитата:
Originally posted by Anyas
Помоему в форуме обсуждаются не личности а програмиирование на Ц++... Ах, да! Ты видимо тоже допёр до этого факта, и решил абасрать не меня, а прогу. Ей-то это абсолютно похер, она работает и кушать не просит, впрочем как и мне. Если хамство и имело место быть, то оно есть продукт вашего хамства\наглости. Единственное путное и чем-то обоснованное замечание это про int=true/false, за него спасибо, уже исправлено. Исчо раз насчёт херовости виндов: на самом-то деле в ненавистном мелкософте работают люди не такие как я, и даже не такие как ты, а программисты высшего класса, которые досканально знают язык и всю виндовую архитектуру, вплоть до вызовов аппаратных прерываний. Но даже всего их персонала вместе с бетатестерами не хватит, штобы исправить все многочисленные уязвимости. Никсы со своим опенсаурсом с самого начала завоевали статус надёжных платформ, потому что миллионы админов каждый день вносят в это свою лепту. Все помнят тот самый msblast, который появился после того как у МС скомуниздили часть кода Вин2к. Причина заглюченности винды - исключистельно экономическая политика руководства МС. Смирившись с этим фактом, хочу сказать, что задача таких форумов как этот - исправлять глюки винды, а не кидаться замечаниями типа "сколько соли вы положили в мой кофэ?". 3D Bob, если автор твоего любимого QIP-сексуальный маньяк, ты же не будеш писать ему в саппорт. Если нормально, без высокомерия общаться, то никто не будет хамить, а тут кинул, понимаеш пару строчек НЕ СВОЕГО, к томуже кода и понеслась п***а по кочкам.
Green, вудь всё-таки осторожен, ибо до добра не доводит барбитура.


Откуда тебе знать мой уровень?
При чем тут MS и пр.? Давай тогда уж и мир во всем Мире приплетем...
Дальнейшее обсуждение считаю бессмысленным в виду отсутствия креатива.
М-да.. в этом топике было спорить совсем неинтересно в виду некомпетенстности опонента... Ни одного факта сплошное хамство и мусор...
Вздумаешь отвечать, придумай что-нибудь ближе к первоначальной теме.

P.S. По поводу программистов из MS, поверь далеко не все там "досканально знают язык". Я видел (и программистов и код), я знаю.

350
06 июня 2006 года
cheburator
589 / / 01.06.2006
Народ, хватит замусоривать форум. Не место для выяснения отношений.
3
07 июня 2006 года
Green
4.8K / / 20.01.2000
Народ, хватит поднимать темы годовалой давности.
10K
13 сентября 2006 года
Celt
5 / / 03.05.2005
typedef std::list<std::basic_string(TCHAR)> string_list; //stdafx.h
....
//----------------------------------------------------
//кусок из класса
...
protected:
string_list m_lsFiles;
...
//----------------------------------------------------
//реализация функции этого класса
...
TCHAR szFile [MAX_PATH];
...
uNumFiles = DragQueryFile ( hdrop, 0xFFFFFFFF, NULL, 0 );
for ( UINT uFile = 0; uFile < uNumFiles; uFile++ ){
if ( 0 == DragQueryFile ( hdrop, uFile, szFile, MAX_PATH )) continue;
if ( PathIsDirectory ( szFile )) continue;
m_lsFiles.push_back( szFile ); //Здесь ошибка
}
...
//----------------------------------------------------------------
выдаёт ошибку
" error C2664: 'std::list<_Ty>::push_back' : cannot convert parameter 1 from 'const char *' to 'std::basic_string (__cdecl &)(TCHAR)' "

самое интересное что в 6-ке работает нормально...
в семёрке выдаёт ошибку...
собсно вопрос...
почиму в 6-ке работает? и как сделать что бы и в 7-ке заработало...
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог