AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Code-Formatierung

Ein Thema von Amateurprofi · begonnen am 8. Feb 2010 · letzter Beitrag vom 11. Mär 2010
 
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#20

Re: Code-Formatierung

  Alt 9. Feb 2010, 02:04
Zitat von Amateurprofi:
Dann beschäftigen sich die User damit dem TE zu erklären, warum er das nicht braucht, aber niemand beschäftigt sich mit dem Code selbst und weist auf eventuelle Fehler oder auf mögliche Optimierungen hin.
Mein "Optimierung":

- HasFormat(1) -> HasFormat(CF_TEXT)
- Bezeichner so schreiben, wie sie deklariert sind. z.B. inc -> Inc etc.
- Einrückungen nach Delphi Standard (so wie im Delphi VCL Code eingerückt wird)

Delphi-Quellcode:
program ReplaceTabs;

{$APPTYPE CONSOLE}

uses
  SysUtils, Clipbrd;

const
  tablen = 3;

function Replace(const s: string): string;
var
  ps, pr: PChar;
  len: Integer;
begin
  SetLength(Result, Length(s) * tablen);
  if s = 'then Exit;
  ps := PChar(s);
  pr := PChar(Result);
  len := 0;
  repeat
    case ps^ of
      #9:
        begin
          len := tablen - len mod tablen;
          while len > 0 do
          begin
            pr^ := ' ';
            Inc(pr);
            Dec(len);
          end;
        end;
      #10, #13:
        begin
          pr^ := ps^;
          Inc(pr);
          len := 0;
        end;
    else
      begin
        pr^ := ps^;
        Inc(pr);
        Inc(len);
      end;
    end;
    Inc(ps);
  until ps^ = #0;
  pr^ := #0;
  SetLength(Result, Integer(pr) - Integer(PChar(s)));
end;

begin
  with ClipBoard do
    if HasFormat(CF_TEXT) then
      AsText := Replace(AsText);
end.
Thomas
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz