網上看到一道題挺有意思的
//這一堆資料中儲存了角色的血值資訊,假設血值的型別為int型別,值為100(10進製)
0x00,0x01,0x02,0x03,0x04,0x05,0x16,0x17,0x07,0x09,
0x00,0x20,0x10,0x03,0x03,0x0c,0x00,0x00,0x44,0x00,
0x00,0x33,0x00,0x47,0x0c,0x0e,0x00,0x0d,0x00,0x11,
0x00,0x00,0x00,0x02,0x64,0x00,0x00,0x00,0xaa,0x00,
0x00,0x00,0x64,0x10,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x02,0x00,0x74,0x0f,0x41,0x00,0x00,0x00,
0x01,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x0a,0x00,
0x00,0x02,0x57,0x4f,0x57,0x00,0x06,0x08,0x00,0x00,
0x00,0x00,0x00,0x64,0x00,0x0f,0x00,0x00,0x0d,0x00,
0x00,0x00,0x23,0x00,0x00,0x64,0x00,0x00,0x64,0x00
首先100換成16進製制,查到對應的16進製制是64
然後int型別四個位元組,小端儲存應該為 0x64,0x00,0x00,0x00
char arr[
100]=;
int nlength =96;
void
printarray()
}}
結果:
此題關鍵點在於for裡面第一行的char* 轉 int*,還有理解小端儲存。
可以很清楚的看出,char型別變數加1是加乙個位元組,int型別變數加1時加四個位元組。
還不清楚的,,,em…自己試試不強轉列印出來什麼樣子叭
oracle 儲存過程遍歷資料
摘要 oracle儲存過程,自定義資料型別,集合,遍歷取值 0.前言 在oracle的儲存過程中,可能會遇到資料處理,假如我們目前的功能在乙個packages中 packages封裝了多個不同功能的procedure,我們在乙個procedure裡面進行統計 在另外乙個procedure進行計算 這...
大端小端資料儲存方式
大端 bigendian 大端模式第乙個位元組是最高位位元組 按照從低位址到高位址的順序存放資料的高位位元組到低位位元組 高位元組在低位址,低位元組在高位址。bigendian 低位址 高位址 0x0000 0x0001 0x0002 0x0003 0x12 0x34 0xab 0xcd littl...
mysql儲存過程之游標遍歷資料表
出處 1 begin 2 declare done int default 0 3 4 declare currentlingqi int 5 6 declare shizuname varchar 30 7 宣告游標 8 declare rs cursor for select nodename,...