February 11, 2011

Alıntı:

>

Eğer char yaparsam düzgün çalışır mı(Tabi ki Türkçe karakterlere elveda diyerek) peki?

Dizi olarak tut ondan sonra ilk karakteri bastır ekrana.

import std.stdio;
import std.cstream;
import std.uni;
void main()
{
   dchar[] alinan;
   dchar sonuc;
   writeln("Lütfen karakteri giriniz:");
   din.readf(&alinan);
   if(alinan[0]=='i'){
       sonuc='İ';
   }
   else if(alinan[0]=='I'){
       sonuc='ı';
   }
   else if(isUniLower(alinan[0])){
       sonuc=toUniUpper(alinan[0]);
   }
   else if(isUniUpper(alinan[0])){
       sonuc=toUniLower(alinan[0]);
   }
   writeln(sonuc);
}

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

February 11, 2011

Alıntı:

>

Bu sefer de UTF-8 karakterleri dönüştüremiyor.Sanırım en iyisi Türkçe adında dizi hazırlayıp eşleşmeye bakmak.Bunu deneyeceğim.

Emin misin? Ben şimdi denedim ve doğru çalıştı. Bir daha dene istersen:

import std.stdio;
import std.cstream;
import std.uni;
void main()
{
   dchar[] alinan;
   dchar sonuc;
   writeln("Lütfen karakteri giriniz:");
   din.readf(&alinan);
   if(alinan[0]=='i'){
       sonuc='İ';
   }
   else if(alinan[0]=='I'){
       sonuc='ı';
   }
   else if(isUniLower(alinan[0])){
       sonuc=toUniUpper(alinan[0]);
   }
   else if(isUniUpper(alinan[0])){
       sonuc=toUniLower(alinan[0]);
   }
   writeln(sonuc);
}

Hata varsa hatanın ne olduğunu açıksa anlatır mısın?

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

February 11, 2011

Alıntı:

>

Sanırım Windows'un tipik Türkçe alerjisi.

Pek emin olamadım.
Şunu denesene:

import std.stdio;
import std.cstream;
import std.uni;

version(Windows)
{
   import std.c.windows.windows : SetConsoleCP, SetConsoleOutputCP;
   static this()
   {
       SetConsoleCP(65001);
       SetConsoleOutputCP(65001);
   }
}

void main()
{
   dchar[] alinan;
   dchar sonuc;
   writeln("Lütfen karakteri giriniz:");
   din.readf(&alinan);
   if(alinan[0]=='i'){
       sonuc='İ';
   }
   else if(alinan[0]=='I'){
       sonuc='ı';
   }
   else if(isUniLower(alinan[0])){
       sonuc=toUniUpper(alinan[0]);
   }
   else if(isUniUpper(alinan[0])){
       sonuc=toUniLower(alinan[0]);
   }
   writeln(sonuc);
}

Birde nedeni hakkında bir teori geliştirdim. Şu programcığı "öçşğüiİ" dizisi ile deneyip sonucunu kopyalar mısın buraya?

import std.stdio;
import std.cstream;


version(Windows)
{
   import std.c.windows.windows : SetConsoleCP, SetConsoleOutputCP;
   static this()
   {
       SetConsoleCP(65001);
       SetConsoleOutputCP(65001);
   }
}

void main()
{

   dchar[] sonuc;
   din.readf(&sonuc);
   writeln(sonuc);
}

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

February 11, 2011

Bu galiba yakın zaman önce düzeltilen hata. Bir sonraki sürümde düzgün olmasını bekliyorum.

trileri'nin ismi de "Türkçenin i harfleri"nden geliyordu.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

February 11, 2011

Programı gdb altında başlatınca ve çöktüğü zaman gdb'nin 'bt' komutunu verince şunu görüyorum:

'Program received signal SIGSEGV, Segmentation fault.
0x08057055 in std.stream.Stream.vreadf() ()
(gdb) bt
#0 0x08057055 in std.stream.Stream.vreadf() ()
#1 0x08057d1c in std.stream.Stream.readf() ()
#2 0x00000002 in ?? ()
#3 0x08080190 in __dso_handle ()
#4 0xffffd250 in ?? ()
#5 0xf7d2ae40 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
'

Yani çöktüğü yerde vreadf() işlevi var. dmd/phobos/std/stream.d dosyasına bakıyorum (bende tam yolu şöyle: /usr/include/d/dmd/phobos/std/stream.d). vreadf() işlevinin içinde tek karakter olarak yalnızca char'ların okunabildiğini görüyorum:

       } else if (arguments[j] is typeid(char*)) {
         fmt = "%c";
       }

Orada desteklenen başka bir sürü tür daha var ama wchar ve dchar yok. Ben bu noktada std.cstream'in artık gitmesini ve bu sorunların bitmesini bekliyorum. :)

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

February 12, 2011

canalpay;
Birincisi UTF-8 karakterlerde hata verdi.İkincisi ise dediğin diziyi yazmama rağmen boş çıktı verdi.

Linux ortamında düzgün çalışıyor mu?

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

February 12, 2011

Boşverelim Windows'u.Pardus kurmayı başardım.Artık özgürüm!!!! :D

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

February 12, 2011

Alıntı:

>

Linux ortamında düzgün çalışıyor mu?

Evet. Windowstan kaynaklanıyor. Bende de olmuştu nasıl çözdüğümü hatırlamıyorum.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

1 2
Next ›   Last »