Ersetzen von bestimmten Sachen...

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

joachim_neu

Betreff: Ersetzen von bestimmten Sachen...

BeitragSo, Mai 30, 2004 15:23
Antworten mit Zitat
Benutzer-Profile anzeigen
also... ich will ein programm machen, mit dem man sowas wie "#define" in C(++) verwenden kann. das dient dazu, dass durch "#define xy 12" jedes "xy" im Quelltext duch "12" ersetzt wird... Dann habe ich mir so'n programm gedacht, dass jede Zeile ließt, wenn "#define" drinn ist die beiden "Parameter" herausnimmt und dann das "xy" im Feld define_name() speichert. das "12" im Feld define_text... Ab dann so mit ner FOR-Schleife nach jedem lesen überprüft werden, ob es vorhanden ist und ersetzt es...

Code: [AUSKLAPPEN]

dim define_name$(100)
dim define_text$(100)
define_nummer = 0
tmp$ = ""
p1$ = ""
p2$ = ""

in = readfile("input.bb")
out = writefile("out.bb")
repeat
eingabe = readline(in)
for I = 0 to 100
if instr(eingabe,define_name(I)) then eingabe = replace$(eingabe,define_name(I),define_text(I))
next
if instr(eingabe,"#define ") then
eingabe = replace$(eingabe,"#define ","")
eingabe = replace$(eingabe," ",",")
for I = 1 to 100
tmp = mid$(eingabe,I,1)
if tmp = "," then exit
p1 = p1 + tmp
next
p2 = replace$(eingabe,p1 + ",","")
define_name(define_nummer) = p1
define_text(define_nummer) = p2
define_nummer = define_nummer + 1
endif
writeline out,eingabe
until eof(in)




das problem ist, dass wenn nicht alle felder gefüllt sind, das programm sich aufhängt und wenn alle voll sind, dann immer nur das 1. ersetzt wird.

hoffentlich kann mir jemand helfen...
mfg und thx

JOACHIM NEU
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

Jolinah

BeitragSo, Mai 30, 2004 15:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Wieso willst du sowas machen? Es gibt doch Konstanten, die haben in etwa die selbe Wirkung..

Code: [AUSKLAPPEN]

Const xy = 12
Const bla$ = "Hallo"


Print bla
a = xy + 20
xy = 10 ;Geht nicht! Denke ich zumindest.

sbrog

BeitragSo, Mai 30, 2004 15:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Einfach oben auf edit -> replace gehen.
Wieso kompliziert, wenn es acuh einfach geht ?

BladeRunner

Moderator

BeitragSo, Mai 30, 2004 15:42
Antworten mit Zitat
Benutzer-Profile anzeigen
halte ich auch eher für gefährlich. stell dir mal vor du erstetzt "nd" mit 254...
du hätest keine einzige funktionierende if-then-verzweigung über mehrere Zeilen mehr, da ja aus jedem end if ein e254 if wird...
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

joachim_neu

BeitragSo, Mai 30, 2004 16:01
Antworten mit Zitat
Benutzer-Profile anzeigen
habs schon geschaft... dadurch, dass vor dem einlesen p1 und p2 nicht mehr gelöscht wurden, hatten die noch das von 1. mal und deswegen gings nicht...
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group