Tak tak. Datový typ uint64_t můžu používat i na osmibitu.
V dobře napsané aplikaci by stačilo dostatečně dlouho předem (po překročení 3 mld. her) změnit jeden řádek, v C++ by to bylo nějak takhle:
typedef uint32_t matchId;
na
typedef uint64_t matchId;
a updatovat appku. Takže nevím, v čem je problém u Apple, když to pokakal někdo jiný.
Neznamenkový 32-bit typ může uchovávat číselné hodnoty od 0 do cca 4 miliard (resp 2^32) což by bylo ideální pro uchování ID. Buď tedy programátoři aplikace zvolili pohodlně typ int nebo je ve výběru omezoval použitý programovací jazyk, např. java nemá neznamenkové typy. Takže jako workaround by se mohl použít ten první typedef pokud to bylo v C/C++ ;-). A emulace (jestli to tak říkám správně) typu s bitovou šířkou větší než umožňuje procesor byla vždy pekelně zaplacena výkonem výsledné aplikace. Nevím kolik by to na 8-bitu stálo, pamětnící jistě odpoví lépe :-)
2LukyH: Nemuze, to je stadecko mistnich fuckkbookovych debilu, ktery nicemu nerozumej, o vsem vedi hovno, a sere je, kdyz nekdo o necem neco vi.
Jinak je to typicka ukazka programovani patlalem (takovych co propagujou ze prece programator nemusi vedet nic tu je taky hromada), kterej vi lautr hovno o tom, co z toho jeho kodu vyleze. Protoze to, ze trebas int je ka kazdy platforme jinak velkej (a dokonce jeste muze mit big/little endian reprezentaci) vedelo za mych casu i 10lety decko. Proto se trebas misto toho intu velmi casto pouzival char.
člověk je vždycky chytrej, když netuší, co ten program dělá. Pro ipad se píše v určité derivaci object C (Cocoa, Swift atd.).
Pravděpodobně použili NSNumber, který má velikost podle platformy, uint64_t k dispozici je. Je otázka ale co s tím číslem vše dělají, jestli ho generují či jinak s ním pracují a kam ho předávají, svět nemusí být jednobarevný.
Aplikace je několik let stará, pro uložení čísla použili nejspíš tu nejjednodušší cestu, tomu nasvědčuje i rychlost opravy.
Trochu to poupravím ... ipad je iPad. object C neexistuje, je to Objective-C (ObjC). Cocoa jsou v podstatě tři frameworky - Foundation, AppKit a CoreData. No, je tam toho víc, ale to není podstatné. Swift je nový jazyk představený Applem a trochu postrádá smysl ho uvádět v závorce s Cocoa.
NSNumber nemá velikost podle platformy. NSNumber má velikost jakou chce vývojář. Záleží jenom na tom co do něj uložíte, viz. https://developer.apple.com/documentation/foundation/nsnumber
Spíš někdo použil NSInteger / NSUInteger https://developer.apple.com/documentation/objectivec/nsinteger?preferredLanguage=occ, který to tak opravdu má: When building 32-bit applications, NSInteger is a 32-bit integer. A 64-bit application treats NSInteger as a 64-bit integer.
Prostě klasika, lidi zapnou 64-bit a nemají vůbec tušení co se pod tím děje. Obdoba toho když jsem někomu na SO vysvětloval, proč se mu BOOL na 64-bit chová (podle jeho slov) divně :) https://stackoverflow.com/questions/31267325/bool-with-64-bit-on-ios/31270249#31270249