Bir uint8 değişkenini bildirdim ve içindeki değer yazdırıldığında gülen yüzler ve beyaz alanlar elde ediyorum. Tam sayı değerleri gösterilmemeli mi?uint8 tuhaf karakterleri görüntüler
cevap
Bahis uint8
, unsigned char
için sistem üstbilgilerinizde typedef
olduğunu iddia ediyorum. Daha sonra std::cout << u
, u
türünde uint8
türünde tamsayı değerleri yerine semboller basacaktır.
std::cout << static_cast<int>(u);
veya
std::cout << +u;
baskılı sayısal değerlere sahip çalışın .
yazıyor ama int32'ye yayınlanmayacak mıyım? – aks
Evet, olacak. Ama sorun ne? Bu, uint8 değişkeninizden geçici bir int oluşturur ve std :: cout yazdırma için bu int beslenir. – usta
@Rajesh. Ondalık olarak yazdırıyorsanız, değer yazdırılmadan hemen önce bir uint8 veya bir uint32'de kayıtlıysa, herhangi bir fark yaratır mı? –
Her şey değeri nasıl yazdıracağınıza bağlıdır. Cout için cout << (long unsigned int)var;
'u ve printf
için %lu
biçim belirtecini kullanmayı deneyebilirsiniz. Ancak, belirtildiği gibi, uint8
muhtemelen bir şey olarak tanımlanmış veya yazılmıştır, çünkü bu bir ISO C++ tipi değildir. uint8
'un unsigned long int
(jenerik) veya unsigned __int64
(MS platformuna özgü) olarak yazılma olasılığı vardır ve MSVC++ derleyicisi yanlış örtük dönüştürme işlemini gerçekleştirmektedir. uint8
'un ne olduğunu bilmeden, anlatması zor.
uint8 doğrudan kullanılıyor ....> typedef uint8 _UINT1; Yorumda, 1 byte tamsayı yazıyor (Kodun etrafında gri bir bloğu nasıl koyarım?) – aks
Eh, sonra '_UIN1;' büyük olasılıkla başka bir şey olarak tanımlanır. Yazılan intrinsik türüne ulaşana kadar yazım kurallarını takip etmelisiniz ('_UINT1', 64 bitlik bir sayı değil, tek bir işaretsiz karaktere işaret ediyor gibi görünüyor). Ayrıca, metni arka alıntı karakterleriyle sarmalayarak kod olarak da (yani "gri kutu") belirtebilirsiniz. – Javert93
typedef uint8 _UINT1; _UINT1'i uint8 ile diğer adı değil, diğer adıyla tanımlar. Yani bir typedef XXX uint8 aramak gerekir; uint8'in ne olduğunu bulmak için beyan. Ya da bana bir 8-bit işaretsiz tamsayı olduğunu ve imzasız char için bir takma ad olduğu konusunda güvenebilirsiniz :) [u] intN [_t] tipleri her zaman N-bayt tam sayıları değil, N-bit tam sayılarını belirtir. – usta
- 1. MySQL verisinden tuhaf karakterleri silme
- 2. UInt8 Dizisini Dize Dönüştür
- 3. Görüntüler
- 4. Özellik Ayarlanamıyor ... undefined --- tuhaf
- 5. System.Diagnostics.Process.Start() tuhaf davranış
- 6. System.getProperty ("os.name") tuhaf değeri
- 7. UIPageViewController tuhaf boyutta
- 8. Yüklemek tuhaf GET isteği
- 9. ViewFlowLayout Tuhaf hata alıyorum
- 10. Highchart tuhaf davranışı.
- 11. PlayFramework ~ koş tuhaf hata
- 12. AdvancedDataGrid görüntüler
- 13. Hızlı hata "[Uint8] türünde bir alt değer belirtilemiyor"
- 14. Fragman List Görünümü tuhaf davranış
- 15. Yürütülebilir tuhaf istisna ile başarısız
- 16. ggplot2 stat_density2d tuhaf üçgenler üretir
- 17. Firefox'ta tuhaf varsayılan yakınlaştırma 22.0
- 18. Magento - Faturanın PDF'sindeki tuhaf sembol
- 19. tüm karakterleri
- 20. İzotop Örtüşen Görüntüler?
- 21. Sözde öğeler ve görüntüler
- 22. 410 Durum görüntüler
- 23. iOS UITableViewCell URL'sinden Görüntüler
- 24. WordPress yüklenmiş görüntüler kesilmiş
- 25. LogCat görüntüler Hiçbir şey
- 26. ios yerleşik görüntüler
- 27. Git boyutlandırma'nın Görüntüler
- 28. Görüntüler önbellekte saklanmıyor
- 29. Köşeli 2: Dinamik Görüntüler
- 30. kaydet Görüntüler Android
kodunuzu gönderin. – tenfour
Bir satıcıdan bir kütüphane kullanıyorum..it bir uint8 türünü döndürür – aks
'% s' biçim belirteci kullanarak bir dize olarak yazdırmaya mı çalışıyorsunuz? Bunun yerine tek tek karakterleri yazdırmaya çalışın. – dirkgently