local aSzavak:={"hetfő","kedd","szerda","csütörtök"}
local cTxt:=""
? ascan(aSzavak,cTxt) // 1
$cccdir/ccclib/src/ascan.prg
58 -ik sorát átírva
// if( !(arr[i]!=blk) )
if(arr[i]==blk)
at:=i
exit
end
? ascan(aSzavak,cTxt) // 0 nekem így kell
más típusú változókkal nem próbáltam...
volt már hasonló tapasztalat?
- 5077 megtekintés
Hozzászólások
de felkapott lett ez a ccc.. :)
- A hozzászóláshoz be kell jelentkezni
Ez Clipper feature. A Clipper '=' (összehasonlítás) operátora anno úgy működött, hogy
(a=b)==.t.
akkor és csak akkor, ha az egyenlóség a b hosszában fennáll. Emiatt a "" string (jobbról) mindennel egyenlő (a '=' operator szerint). A '=' operator a CCC-ből száműzve van, de tudni kell, hogy a >, <, >=, <=, != operátorok is így működnek.
Namost az ascan alapból az '=' féle összehasonlítást csinálja. Ha más kell, akkor meg kell neki adni egy összehasonlító kódblokkot. Neked erre lehet szükséged:
ascan(tomb,{|x,y|x==y})
Az operátorok és az ascan működésén a kompatibilitás érdekében nem lehetett változtatni. Egyébként nekem sem tetszik.
--
CCC3
- A hozzászóláshoz be kell jelentkezni
köszönöm a választ
így fogok eljárni.
- A hozzászóláshoz be kell jelentkezni
Az én megoldásom: xascan függvény, mindenben azonos az ascan-nel, kivéve akkor, amikor az ascan =-vel keresne, mert akkor ==-vel keres. A CCC3Winter-ben van.
w
- A hozzászóláshoz be kell jelentkezni
működik!
- A hozzászóláshoz be kell jelentkezni