HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 26.03.2008, 21:10
De-visible
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме:
4037638

Репутация: 1821


Lightbulb

Цитата:
Сообщение от desTiny  
А вот и у меня вопрос возник Это конечно не критично, но всё же:

Как получить указатель на функцию из стандартных модулей, например, на функцию sin?

Я делал так:
Код:
type
num = Extended;
TFunc = function(x: num):num;
var
p: TFunc;

......
function sinus(x: num):num;
begin
  result := sin(x);
end;
......
  p := @sinus;
А хочется чего-нибудь типа
Код:
p := @System.sin;
,но так оно не работает.
Извини, но я больше не знаю как

А что так не устраивает???

Последний раз редактировалось De-visible; 26.03.2008 в 22:14..
 
Ответить с цитированием

  #2  
Старый 26.03.2008, 18:09
De-visible
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме:
4037638

Репутация: 1821


По умолчанию

Я вопроса не понял
 
Ответить с цитированием

  #3  
Старый 26.03.2008, 18:50
desTiny
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме:
3008839

Репутация: 1502


По умолчанию

Коротко: хочу получить указатель на функцию sin
__________________
Bedankt euch dafür bei euch selbst.

H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
 
Ответить с цитированием

  #4  
Старый 26.03.2008, 19:08
De-visible
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме:
4037638

Репутация: 1821


По умолчанию

{ Это простой пример, определяющий массив указателей на функции }

interface

type

{ определяем Procs как функцию }
Procs = function(var ProcNum: LongInt): LongInt;

var

{ объявляем массив указателей на функции }
ProcTable: array[1..5] of Procs;

{ определения интерфейсов функций }
function Proc1(var MyVal: LongInt): LongInt; far;
function Proc2(var MyVal: LongInt): LongInt; far;
function Proc3(var MyVal: LongInt): LongInt; far;
function Proc4(var MyVal: LongInt): LongInt; far;
function Proc5(var MyVal: LongInt): LongInt; far;
Ну или посмотри здесь
_http://www.soft32.ru/delphi.shtml?topic=syntax&title=function_pointer
 
Ответить с цитированием

  #5  
Старый 26.03.2008, 20:46
desTiny
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме:
3008839

Репутация: 1502


По умолчанию

Цитата:
Сообщение от De-visible  
{ Это простой пример, определяющий массив указателей на функции }

interface

type

{ определяем Procs как функцию }
Procs = function(var ProcNum: LongInt): LongInt;

var

{ объявляем массив указателей на функции }
ProcTable: array[1..5] of Procs;

{ определения интерфейсов функций }
function Proc1(var MyVal: LongInt): LongInt; far;
function Proc2(var MyVal: LongInt): LongInt; far;
function Proc3(var MyVal: LongInt): LongInt; far;
function Proc4(var MyVal: LongInt): LongInt; far;
function Proc5(var MyVal: LongInt): LongInt; far;
Ну или посмотри здесь
_http://www.soft32.ru/delphi.shtml?topic=syntax&title=function_pointer
В том-то и дело, что мне нужно обратиться не к моей собственной функции, а к стандартной типа sin, cos, abs и т.п. Так, как ты пишешь, я и сделал (см. приведённый мной пример), но мне интересно, как сделать это непосредственно...
__________________
Bedankt euch dafür bei euch selbst.

H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
 
Ответить с цитированием

  #6  
Старый 26.03.2008, 21:16
desTiny
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме:
3008839

Репутация: 1502


По умолчанию

Просто когда много таких вызовов, очень не хочется для каждой функции создавать "переадресацию"... Так-то я и сделал, а теперь оптимайзю
__________________
Bedankt euch dafür bei euch selbst.

H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
 
Ответить с цитированием

  #7  
Старый 27.03.2008, 13:17
KIR@PRO
Постоянный
Регистрация: 26.12.2007
Сообщений: 353
Провел на форуме:
905389

Репутация: 332
По умолчанию

дайте пожалуйста код хеширования строки в NT и/или LM как в проге SAMinside иди Passwordpro...
 
Ответить с цитированием

  #8  
Старый 27.03.2008, 14:45
De-visible
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме:
4037638

Репутация: 1821


Post

Цитата:
Сообщение от KIR@PRO  
дайте пожалуйста код хеширования строки в NT и/или LM как в проге SAMinside иди Passwordpro...
Тебе важны сами алгоритмы или их реализации на DELPHI??

-------------------------

Вот посмотри еще:
Код:
_http://inf.nm.ru/lokalno.htm
_http://www.3dnews.ru/software/win-xp-encrypting/index2.htm
_http://www.openwall.com/john/
_http://www.connect.ru/article.asp?id=6641
_http://www.web-hack.ru/download/index.php?case=4
_http://book.itep.ru/6/des_641.htm
_http://www.kursovik.net/programming/290019.html

Последний раз редактировалось De-visible; 27.03.2008 в 15:34..
 
Ответить с цитированием

  #9  
Старый 28.03.2008, 19:38
Twiddle
Познающий
Регистрация: 06.09.2006
Сообщений: 94
Провел на форуме:
397064

Репутация: 15
По умолчанию

Подскажите плз как изменить что бы не было повторов в найденом? ВОт код:

Код:
procedure poisk;
var S, Q: TStrings;
    I, J: Integer;
begin
  S := TStringList.Create;
  Q := TStringList.Create;
  S.LoadFromFile('C:\bla-bla.txt');
  I := 0;
  J := 0;
  while I<S.Count-1 do
  begin
    if Pos('string 1', S.Strings[I])<>0 then
    begin
      Q.Add(S.Strings[I]);
      Inc(I);
      Inc(J);
      Q.Add(S.Strings[I]);
      Q.Add('');
    end;
    Inc(I);
  end;
  if J>0 then
  begin
    Q.Insert(0, '');
    Q.Insert(0, DateToStr(Now));
    Q.Insert(0, 'Naydenno '+IntToStr(J)+' strok');
    Q.SaveToFile('c:\result.txt');
  end;

  S.Free;
  Q.Free;
end;
 
Ответить с цитированием

  #10  
Старый 28.03.2008, 22:32
De-visible
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме:
4037638

Репутация: 1821


По умолчанию

Цитата:
Сообщение от Twiddle  
Подскажите плз как изменить что бы не было повторов в найденом? ВОт код:

Код:
procedure poisk;
var S, Q: TStrings;
    I, J: Integer;
begin
  S := TStringList.Create;
  Q := TStringList.Create;
  S.LoadFromFile('C:\bla-bla.txt');
  I := 0;
  J := 0;
  while I<S.Count-1 do
  begin
    if Pos('string 1', S.Strings[I])<>0 then
    begin
      Q.Add(S.Strings[I]);
      Inc(I);
      Inc(J);
      Q.Add(S.Strings[I]);
      Q.Add('');
    end;
    Inc(I);
  end;
  if J>0 then
  begin
    Q.Insert(0, '');
    Q.Insert(0, DateToStr(Now));
    Q.Insert(0, 'Naydenno '+IntToStr(J)+' strok');
    Q.SaveToFile('c:\result.txt');
  end;

  S.Free;
  Q.Free;
end;
Цитата:
while I<S.Count-1 do
Зачем так - он у тебя последнюю строку не проверит!
пиши так
Код:
while i<S.count
или
Код:
while i<=s.count-1
А что бы в result.txt не было повторов
сделай повторный поиск поэтому файлу
===============================
Код:
procedure poisk;
var SL,Ish: TStringList;
i:integer;
begin
  ISH:=TstringList.Create;
  ISH.LoadFromFile('d1.txt');
  SL := TStringList.Create;
  with SL do
    try
      Sorted := True;
      For i:=0 to ISH.Count-1 Do Begin
      SL.Add(ISH[i]);
      end;
      Duplicates := dupIgnore;
      sl.SaveToFile('result.txt');
  finally
    Free;
  end;
end;
-----------------------------
Удаляет все дубликаты и сохраняет в result.txt
А чего ты именно хочешь?()
Вывести сколько раз в файле встречается строка String 1?

Последний раз редактировалось De-visible; 29.03.2008 в 01:13..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Wi-Fi, BT] Задай вопрос - получи ответ! Alexsize Беспроводные технологии/Wi-Fi/Wardriving 2569 10.05.2026 13:27
[jQuery] - Задай вопрос, получи ответ Isis PHP 62 25.12.2009 03:25



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.