我需要帮助将此代码块转换为java。我从来没有使用过C++,因此这是一项任务。这是C++代码:将C++转换为Java - 小型项目
#include<iostream>
#include<stdlib.h>
#define PAGE_SIZE 4096
using namespace std;
int main(int argc, char **argv){
if(argc<2){
cout<<"Enter the address: ";
return -1;
}
unsigned int address = atoi(argv[1]);
unsigned int page_number = address/PAGE_SIZE;
unsigned int offset = address%PAGE_SIZE;
cout<<"the address "<<address<<"contains: Page number = "<<page_number<<"And off set = "<<offset<<endl;
system("pause");
}
这是我迄今为止在Java:
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int pageSize = 4096;
int x = 0;
int address = atoi(argv[1]);
int pageNumber = address/pageSize;
int offset = address % pageSize;
if (x < 2) {
System.out.println("Enter the address: ");
x = in.nextInt();
}
System.out.println("The address " + address + " contains: Page number = " + pageNumber + " And off set = " + offset);
}
我不知道什么 “的argv [1]” 的意思在C++中,所以我不不知道如何将它转换为java。我正在做这个功课,我试图回答的问题是:
假设一个系统具有一个4-KB页面大小的32位虚拟地址。编写一个在命令行上传递虚拟地址(十进制)的程序,并让它输出给定地址的页码和偏移量。
举个例子,你的程序将运行如下:yourprogram 19986
你的程序将输出:
地址19986包含:页码= 4偏移= 3602
编写这个程序将要求使用适当的数据类型来存储32位。也使用无符号数据类型类型。
对此的任何帮助将非常赞赏。
'的例子;'...不闻起来像C,而它是C++。 –
Downvoted是因为Google搜索“C++中的argv是什么”在标注框中产生了确切的解释。 – chrylis