SORU
20 Ocak 2010, ÇARŞAMBA


Platformlar bir 8-bit char daha başka ne var?

Her şimdi ve sonra, birisi char (aka 'byte') isn't necessarily 8 bits dikkat çekiyor.

8-bit char neredeyse evrensel gibi görünüyor. Ana akım platformlar için, bir 8-bit char gereklidir bu piyasada canlılık sağlamak için düşünmüştüm.

Hem şimdi hem de tarihsel olarak, 8 bit olmayan char Ne ve neden dan bir farkı olur onlar "normal" 8 bit?

Kod yazma, ve çapraz platform desteği (genel kullanım kütüphaneleri gibi) düşünmeye zaman, ne tür bir bedel olmayan 8-bit platformları char vermeye değer mi?

Hangi char bazı Analog Devices DSP rastladım geçmişte 16 bit. DSP sanırım niş bir mimari biraz. (Sonra tekrar, el-kodlu çevirici gerçekten bu platform üzerinde C ile çok fazla deneyim elde edemedim, bu yüzden mevcut C derleyicileri neler yapabileceğini kolayca yendi.)

CEVAP
20 Ocak 2010, ÇARŞAMBA


char da OMAP2 örneğin açık olan Texas Instruments C54x, DSP, 16 bit. Diğer DSP orada 16 ve 32 bit char ile vardır. Ben bile 24-bit DSP bir önceden duymuştum, ama, belki de hayal gördüğümü hatırlamıyorum.

Başka bir göz POSIX görev CHAR_BIT == 8. Eğer öyleyse POSIX kullanıyorsanız bu kabul edilebilir. Eğer birisi daha yakın bir uygulama POSIX kodunuzu limana ihtiyacı varsa, bu çok kullandığınız işlevlere ama farklı bir boyuta sahip oluyor kötü şans char,.

Genel olarak, olsa da, hemen hemen her zaman bunu düşünmek için daha çok soruna geçici bir çözüm bulmak için daha kolay olduğunu düşünüyorum. Sadece yazın CHAR_BIT. Eğer 8 bit tam bir tip istiyorsanız, int8_t kullanın. Kodunuzu gürültüyle bir sunamayan uygulamaları derlemek için, sessizce beklemiyordun bir boyut yerine başarısız olur. Eğer danışmak için iyi bir nedenim vardı bir olgu vurursam en azından, o zaman bunu iddia ediyorum.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • A Alkhaldi

    A Alkhaldi

    12 Mayıs 2007
  • ELawshea

    ELawshea

    26 Mayıs 2008
  • hitcreatormusic2

    hitcreatormu

    21 Mayıs 2010