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

  • Ben Vivona

    Ben Vivona

    24 Ocak 2010
  • HTC

    HTC

    12 Ocak 2006
  • Photoshop Tutorials

    Photoshop Tu

    22 HAZİRAN 2011