2017-03-07 83 views
-1

我正在使用虛擬操作系統作爲我的任務的一部分。內存是大小爲[300] [4]的二維數組。將內存的內容從int轉換爲char

問題是,當我打印它的內容時,它們顯示爲整數值,即使在將其類型化爲char後仍然會打印整數值 。

我現在面臨的問題是在這裏

for(int i=0;i<300;i++) 
{ 
    for(int j=0;j<4;j++) 
    { 
     System.out.println("M["+i+"]["+j+"]="+M[i][j]);   
    } 
} 

即使類型轉換後顯示整數值 注:輸入文件包含以下

$AMJ001100070003       
GD10PD10LR10SR40H 
$DTA 
OPERATING 
$END0011 

所以我要做的就是生成一個隨機存儲器例如,如果幀的值是20,則GD10PD10LR10SR40H存儲在位置200.

(PTR(頁表寄存器))的位置,然後爲幀生成另一個隨機數並乘以

所以問題是當我打印它的內容,例如內存位置200其顯示內容71(G值),當它在顯示71後顯示而不是'G'。我也嘗試添加48(ASCII值爲0)但沒有影響。 請幫助我解決這個問題。

我哪裏做錯了

回答

0

這應該工作,使用字符的ASCII範圍內的值轉換爲字符:

for(int i=0;i<300;i++) 
     { 
      for(int j=0;j<4;j++) 
      { 
       System.out.println("M["+i+"]["+j+"]="+(char)M[i][j]);   
      } 
     }