void main()
{
import std.range, std.stdio;
if("") {
writeln("if için true çalıştı ");
}
else
{
writeln("if için false çalıştı ");
}
readln();
}
küçük bir antreman yaparken yukarıdaki programı denedim ancak if("") ile pek anlaşamadım bu sefer :-p
normalde if(0) false üretiyor vesaire bunları anlayabiliyorum ancak if("")aslında string ve içi boş bir şeyi temsil etmiyor mu ? bu durumda false dönmesi yani else ile tanımlı bloğun çalıştırılması gerekmezmiydi ?
başka bir deneme yaptığımda da;
void main()
{
import std.range, std.stdio;
sting cümle;
if(cümle) {
writeln("if için true çalıştı ");
}
else
{
writeln("if için false çalıştı ");
}
readln();
}
Bu durumda ben şunu anlıyorum eğer bir string değişkeni tanımlanırken atama yapmadıysak içi boştur ancak strring cümle="" türü bir atama dahi yapılsa içi doludur(her ne kadar içi boş olsada) bunumu anlamalıyım ?
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]
Permalink
Reply