| |
|
|
CB | Hi, iF! Wie wärs mit folgender Syntax für die nächste XPSE-Version: [box:d99e4290f2]2 < x% < 3[/box:d99e4290f2]statt[box:d99e4290f2](2 < x%) And (x% < 3)[/box:d99e4290f2] und analog mit Stringvariablen? [box:d99e4290f2]x$ = a$ <> b$[/box:d99e4290f2] 2 Bedingungen auf einen Streich abgefragt - das wär doch was!
Ciao, Christian |
|
|
| |
|
|
|
| Ich glaube ich bin mit der Logik nicht einverstanden.
Meiner Meinung ist 2 < x% < 3 nicht (2 < x%) And (x% < 3)
sondern 2<x%<3 ist (2<x%)<3 wobei (2<x%) nur true oda false sein kann und true nicht <3 sein kann.
Da gibt es also verschiedene Interpretationsvarianten. Wenn man sich darüber einig werden würde dann ist die Umsetzung sichlich kein Problem.
Salve. |
|
|
| |
|
|
|
CB | Tut leid, kapier ich nicht. Die Bedingung, ob 2 < 3 ist, werde ich doch hoffentlich nimmer abfragen müssen, das sollte immer true ergeben - wenns anders wäre, gäbs spätestens in der 2. Klasse Volksschule ein Setzen, Nicht genügend! Ich will ja nur abfragen, ob x% größer als 2 UND kleiner als 3 ist. Wenns sogar die WordBasic-Syntax versteht, sollts in Profan doch auch möglich sein?
Christian |
|
|
| |
|
|
|
| Ok mal ne Frage Christian - wie würdest Du das hier verstehen:
if (aix&=fopen(c:\test.dat,r-))
?
Salve. |
|
|
| |
|
|
|
CB | Kann ich nur vermuten, weil ich fopen nicht kenne. Ich nehme mal an, daß erst das Attribut von test.dat geprüft wird, bei r- also nicht read-only gesetzt ist und danach erst erhält aix& ein Handle oder halt nicht - korrekt?
Christian |
|
|
| |
|
|
|
CB | Habe mich inzwischen ein bissel weitergebildet: (aus:https://de.php.net/fopen) [box:387d7faec3]fopen (PHP 3, PHP 4 , PHP 5)
fopen -- Öffnet eine Datei oder URL Beschreibung resource fopen ( string filename, string mode [, int use_include_path [, resource zcontext]] )
fopen() bindet eine benannte Resource, welche mittels filename spezifiziert wurde, an einen Stream. Hat filename die Form [...] wird angenommen, dass es sich hier um eine URL handelt und PHP sucht nach einem Protokollhandler (auch als Wrapper bekannt) für dieses Schema. Sind keine Wrapper für dieses Protokoll registriert, gibt PHP als Hilfe zum Verfolgen potentieller Probleme in Ihrem Skript einen Hinweis aus und setzt dann weiter fort, obwohl filename eine reguläre Datei spezifiziert.
Ist PHP zu dem Schluss gekommen, dass filename eine lokale Datei spezifiziert, wird es versuchen, einen Stream an dieser Datei zu öffnen. Die Datei muss für PHP verfügbar sein, weshalb Sie sicherstellen müssen, dass die Dateirechte diesen Zugriff ermöglichen. Wenn Sie Safe Mode oder open_basedir aktiviert haben, können weitere Einschränkungen zutreffen.
Kam PHP zum Schluss, dass es sich bei filename um ein registriertes Protokoll handelt, und ist dieses Protokoll als eine Netzwerk URL registriert, prüft PHP, ob allow_url_fopen aktiviert ist. Ist es nicht aktiviert, gibt PHP eine Warnung aus, und der Aufruf von fopen wird scheitern.[/box:387d7faec3] Also allzu weit war ich nicht entfernt...
Christian |
|
|
| |
|
|
|
| Ja und wann wird denn nun nach Deinem Verständnis Hallo Welt angezeigt bei
if (fopen(,)) { die(Hallo Welt);}
?
Salve. |
|
|
| |
|
|
|
CB | Wenn Du glaubst, daß ich jetzt nach einer simplen Frage meinerseits PHP lernen werde, um Dir die Frage beantworten zu können, muß ich Dich enttäuschen. Ich habe ja noch beim Äpfel- und Birnen-Vergleich mitgespielt, aber jetzt probierst Dus mit Lychees! Kann halt kein japanisch - na und?
Christian |
|
|
| |
|
|
|
| Siehst - ich wollte doch nur mal demonstrieren (was ich oben schon schrieb) das es bei dieser Argumentation verschiedene Interpretationsmöglichkeiten gibt.
ein if a=fopen ist dann z.B. true wenn das fopen an a ein resourcehandle übergeben konnte. Hierbei wird das Übertragen von fopen auf a mit true oder false bewertet. Das Übertragen - nicht das logische Argument.
Deshalb meinte ich ja
ein x<y<z
könnte heißen
((x<y)&(y<z)) == ((true|false)&(y<z)) == ((true|false)&(true|false)) == (true|false)
oder aber auch
((x<y)&(y<z)) == ((true|false)<z) == (NAN|0)
Da nicht klar ist - wie die syntax von XProfanern verstanden würde - ...
Salve. |
|
|
| |
|
|
|
CB | Da hast Du mich falsch verstanden: Ich will ja nicht x < y < z (dabei hättest Du natürlich recht), sondern 2 < x < 3, will also mit einer Abfrage eruieren, ob x kleiner als ein Fixwert und größer als ein anderer Fixwert ist.
Christian |
|
|
| |
|
|
|
| Ich müsste in XProfan jedoch als Fixwerte auch Konstanten zulassen - da diese jedoch nicht ausschließlich headermäßig deklariert werden müssen sind diese eigendlich Variablen lol.
Hierbei kann also in XProfan nicht zwischen Fix,- und Variabel-Werten unterschieden werden - oder man müsse Konstanten rauslassen.
hmpf - ich werde mir dazu später nochmals Gedanken machen - habs in die ToDo geschrieben.
Ich glaube aber eher es wäre interessant wenn man auch (x$=y$=z$=str$(h&)=5) schreiben könnte.
Salve. |
|
|
| |
|
|
|
Michael Wodrich | [quote:9cdc2c84d6] Da hast Du mich falsch verstanden: Ich will ja nicht x < y < z (dabei hättest Du natürlich recht), sondern 2 < x < 3, will also mit einer Abfrage eruieren, ob x kleiner als ein Fixwert und größer als ein anderer Fixwert ist.
Christian [/quote:9cdc2c84d6] ...und warum muß man dazu die Syntax verbiegen???? KompilierenMarkierenSeparierenDef InRange!(3) @If((@!(1)) >= (@!(2)),@If((@!(1)) <= (@!(3)),1,0),0)
Def InRange&(3) @If((@&(1)) >= (@&(2)),@If((@&(1)) <= (@&(3)),1,0),0)
Def InRangeEx!(3) @If((@!(1)) > (@!(2)),@If((@!(1)) < (@!(3)),1,0),0)
Def InRangeEx&(3) @If((@&(1)) > (@&(2)),@If((@&(1)) < (@&(3)),1,0),0)
InRange! - ... (Float)
InRange& - ... (Ganzzahl)
InRangeEx! - ... (Float) (ohne Grenzwerte)
InRangeEx& - ... (Ganzzahl) (ohne Grenzwerte)
- Prüft, ob Wert 1 innerhalb des Bereiches v. Wert 2 (Min) u. Wert 3 (Max) liegt.
Die InRange-Funktion erwartet als ersten Wert den zu prüfenden. Der 2.Wert ist der Minimum, der 3.Wert der Maximum-Wert.
MfG Michael Wodrich |
|
|
| Programmieren, das spannendste Detektivspiel der Welt. | 29.04.2005 ▲ |
|
|
|