MarkoPolo
> Ну, тут можно не согласится. Число символов в асм коде может быть невозбранно
> намного больше, чем число символов в C при одинаковых задачах, выполняемых
> кодом.
Давай я напишу простейшую оконную программу на Delphi а ты в своем минималистическом Си, и сравним число символов, давай?
master-sheff
> Давай я напишу простейшую оконную программу на Delphi а ты в своем
> минималистическом Си, и сравним число символов, давай?
При использовании одинакового АПИ Си победит.
А без этого не честно.
Продемонстрируйте мне Паскальный(или Дельфиний) указатель на функцию и переведите это на дельфи. Простое копирование строк. while( *dst++ = *src++ ) ;
Pokimon
> Продемонстрируйте мне Паскальный(или Дельфиний) указатель на функцию и
> переведите это на дельфи.
Type P1 = procedure(i:Integer); ... ... procedure proc1(i:Integer); begin end; ... var P:P1; ... ... P = proc1; P(1);
Ы?
>Простое копирование строк. while( *dst++ = *src++ ) ;
Руки до плечь ампутировать за такую простоту.
master-sheff
> oistalker
> > и чушь в виде возврата результата работы функции путем присваивания значение
> >
> > имени функции
> lol что?
> давай пиши еще раз "Ну значит ошибся..."
Это не он писал, а я.
И что? Разве не так уважаемый?
Pokimon
> Продемонстрируйте мне Паскальный(или Дельфиний) указатель на функцию и
> переведите это на дельфи. Простое копирование строк. while( *dst++ = *src++ ) ;
Мда.. Копировать оно будет до бесконечности... Пока на страничку памяти с non readable/writeable не набредет. Не хороший пример.
Мух
> Мда.. Копировать оно будет до бесконечности...
Ы ?
До нулевого символа будет копировать. Включая его.
Мух
> Это не он писал, а я.
Сорри
Мух
> И что? Разве не так уважаемый?
Нет не так, все почти как в вашем Си
Result := False; Result := 0; Result := 'Результат';
заглянул в топик
фейспалмю.жпг и все тут
master-sheff
И Си не мой. Просто это один из языков на котором я программирую.
Сколько видел программ на дэлфи (возможно это были не правильные программы), но там пишут либо Result (как ты указал), либо присваивают имени функции значение результата. И то, и то, имхо не совсем понятно, но коли есть, значит пускай будет.
Nikopol
> Ы ?
> До нулевого символа будет копировать. Включая его.
Неа.
Если строка инициализирована как "пустая", то не скопирует ничего.
Если в другой строке что-то есть с нулем на конце, то скопирует до этого нуля.
Если строка не инициализирована никак, то копирование может затянутся (вплоть до exception).
Можешь проверить :)
Мух
> Если строка инициализирована как "пустая", то не скопирует ничего.
> Если в другой строке что-то есть с нулем на конце, то скопирует до этого нуля.
> Если строка не инициализирована никак, то копирование может затянутся (вплоть
> до exception).
Бред говорите. Это абсолютно верное копирование.
Или в вашем поскале при подсовывании неверных данных вы получите что-то иное?
Мух
При обсуждении банальных кусков кода предполагается, что входные данные - верные.
Если не оговорено обратное.
Так что это нормальное копирование.
Pokimon
> Бред говорите. Это абсолютно верное копирование.
Да причем тут паскаль вообще, уважаемый?
Проверь приведенный тобой код и узри не бред, уважаемый :)
Nikopol
> что входные данные - верные
И какие входные данные верны в данном случае?
Я не пытаюсь ничего доказать. Просто уж коли приводишь пример, то хотя бы реальный :)
Мух
> И какие входные данные верны в данном случае?
src указывает на память, которую можно читать до нулевого байта включительно,
dst указывает на память, где достаточно места для записи копии строки.
Nikopol
> src указывает на память, которую можно читать [b]до нулевого байта включительно,[/b]
Воот. Но данный кусок кода абсолютно это игнорирует и будет читать из src до бесконечности или до первого exception по памяти.
Хотя да, в dst может и быть достаточно места для копирования строки из src с нулем.
Ладно. Закрываю я разговор, ибо тут не в доказательстве дело.
Тема в архиве.