java源程序编译过后的文件是什么文件

java源程序编译过后的文件是什么文件,第1张

java源程序文件名是java(源代码就在java里)

编译后为class(class是二进制文件

java虚拟机(JVM)运行程序的时候就是加载class文件,因此说java程序都是由class堆起来的

JAVA_HOME=C:\Program Files\Java\jdk180_40

PATH=%JAVA_HOME%\bin;

CLASSPATH=;%JAVA_HOME%\lib\dtjar;%JAVA_HOME%\lib\toolsjar;

--------------------------------

其中:PATH属于追加内容,添加到原先内容的最前面,分号隔开。

其他的都是新建内容。

// lianbiaocpp : ¶¨Òå¿ØÖÆ̨ӦÓóÌÐòµÄÈë¿Úµã¡£

//

//#include "stdafxh"

#include <iostreamh>

//using namespace std;

#include "stdlibh"

class Node //Á´±í½áµãÀà

{

public:

Node():next(NULL){}

Node(int n,Node ptr=NULL):num(n),next(ptr){}

Node next;

int GetNum() const

{

return num;

}

private:

int num;

};

class List //Á´±íÀà

{

friend ostream & operator <<(ostream & os,List & l); //ÖØÔØÊä³ö,ÓÃÓÚÊä³öÁ´±í

public:

List():head(NULL){} //ȱʡ¹¹Ô캯Êý

List(int a,int size); //´ÓÊý×é¹¹ÔìÁ´±í

int Add(int n); //Ôö¼Ó½áµã

int Del(int n); //ɾ³ý½áµã

int length();

protected:

Node head;

};

List::List(int a,int size)

{

head=NULL;

for(int i=0;i<size;i++)

Add(a[i]);

}

int List::Add(int n)

{

if(head==NULL)

{

head=new Node(n);

return 1;

}

else

{

Node p=head;

while(p->next!=NULL)

p=p->next;

p->next=new Node(n);

return 1;

}

return 0;

}

int List::Del(int n)

{

Node p=head;

while(p!=NULL)

{

if(p->GetNum()==n)

{

if(p==head)

{

head=head->next;

delete p;

p=head;

}

else

{

Node r=head;

while(r->next!=p)

r=r->next;

r->next=p->next;

delete p;

p=r->next;

}

}

if(p!=NULL)

p=p->next;

}

return 1;

}

ostream & operator <<(ostream & os,List & l)

{

Node p=lhead;

while(p!=NULL)

{

os<<p->GetNum()<<" ";

p=p->next;

}

return os;

}

int List::length()

{

int n = 0;

Node p=head;

while (p!=NULL)

{

n++;

p=p->next;

}

return n;

}

int main()

{

int in,i;

int a[10];

cout<<"ÊäÈë10¸öÊý,´æ·ÅÔÚÊý×éÖÐ:"<<endl;

for(i=0;i<10;i++)

{

cin>>a[i];

}

List l(a,10);

cout<<l<<endl;

cout<<"´ËʱÁ´±íµÄ³¤¶ÈΪ£º"<<llength();

cout<<"ÊäÈëÒ»¸öÒª¼ÓÈëµ½Á´±íµÄÊý¾Ý:"<<endl;

cin>>in;

lAdd(in);

cout<<l<<endl;

cout<<"ÊäÈëÒ»¸öҪɾ³ýµÄÊý¾Ý:"<<endl;

cin>>in;

lDel(in);

cout<<l<<endl;

return 0;

}

这是改好的代码,你运行一下,我不知道是不是你要的功能!

我们正在学习arm编程,对这个比较有发言权

首先把C作为编程语言这个是主流,因为C比汇编好 *** 作,写出的成语容易懂,而且将来移植很方便,毕竟嘛,各主流平台都有对C的标准库支持,linuxx下的hellowordl 源程序在windows平台下编译运行 也会是hello world 不会变成 hello linux

但是汇编也要懂,在平台开发这阶段,很多的时候用的是 C内嵌汇编,毕竟你想从某个寄存器里读取他的值,C肯定没法完成!所以你的中心放在 C的学习上,然后看看汇编,最起码能看得懂,一些汇编想要表现个什么 对吧!!!

以GCC编译器为例,可以分为四步。

第一步是预处理,包括语法检查等工作。

gcc

-P

abcc

第二步由源程序生产汇编语言代码。

gcc

-S

abcc

会生成abcs文件,这个文件里就是汇编代码。

第三步编译器生成目标代码,一个源文件生成一个目标代码。

gcc

-c

abcc

会生成abco

第四步连接器从目标代码生成可执行文件。

目标代码包括机器码和符号表(函数及变量名)。连接器的主要作用是通过符号表在库文件和其他模块中找到在目标代码中引入或未定义的符号(函数及变量名),将几个目标代码合成可执行文件。

以上就是关于java源程序编译过后的文件是什么文件全部的内容,包括:java源程序编译过后的文件是什么文件、用cmd可以编译java源程序,但是运行时却提示错误:找不到或无法加载主类,这是什原因啊、修改的人家的源程序,但出了错,请帮忙改错等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10085873.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存