1樓:匿名使用者
因為沒有給m_explain申請記憶體,如果是指標,必須先申請記憶體。或者使用陣列,讓系統自動分配記憶體。
可改為:
static jbyte *m_explain = malloc(2*sizeof(jbyte));
int i=0;
m_explain[i++]=(jbyte)0xff;//這兩行始終執行不下去
m_explain[i++]=(jbyte)0x11;
//釋放記憶體
free(m_explain);
或者static jbyte m_explain[2];
int i=0;
m_explain[i++]=(jbyte)0xff;//這兩行始終執行不下去
m_explain[i++]=(jbyte)0x11;
2樓:匿名使用者
static jbyte *m_explain;這兒編譯不報錯麼?
感覺應該報錯才對的,靜態變數沒有初始化
m_explain沒有指向任何地址呢
試試用static jbyte *m_explain = new jbyte[128];這樣,先分配記憶體試試?
在c語言裡面宣告指標並用malloc賦值與與直接宣告變
區別當然是有的 link n 申明結構體實體 n 結構體地址 link n 申明結構體指標 n malloc sizeof link 讓結構體指標指向申請的記憶體空間,需要free釋放 後者需要釋放並且申請大小靈活 希望對你有幫助 首先你得明白malloc函式的作用 malloc函式是在記憶體中找到...
c語言指標陣列如何存放函式地址C語言指標陣列如何存放函式地址
c c 的指標的靈活,常把許多初學者搞暈,連高手也是如此。1.當然,可以呀,一切資料都可返回 2.複合指標型別直接表示非常麻煩 連高手都是這樣 可以分解成多個簡單型別 typedef void funtype void funtype num 100 分解後簡單多了!3.因為函式名不是字串,初始化時...
sql中如何給變數賦值,Sql中如何給變數賦值
declare n1 int,n2 varchar 10 set n1 select age from table where column set n2 select gender from table where column 或者一起賦值 就是樓上那個 declare n1 int,n2 va...