復(fù)習(xí)C/C++、Java語言知識,結(jié)合Python語言知識,結(jié)合實(shí)例代碼說明C/C++、Java與Python的區(qū)別(綜述題)。
要求:
至少列出十點(diǎn)以上區(qū)別;
要求每點(diǎn)說明時(shí)要結(jié)合示例代碼;
嚴(yán)禁抄襲!
1.c語言有指針,其余的沒有指針
c指針代碼如下:
void swap(int * m, int * n){
int temp;
temp = *m;
*m = *n;
*n = temp;
}
2.c/c++/java 對變量的定義很嚴(yán)格各種類型有嚴(yán)格的定義
c/c++/java 定義如下:
int a=0;
而python直接:
a=0
即可
3.在c/c++/java中每段代碼之后要有;分開
例如:
int a=0;
而python直接:
a=0
即可
4.在c/c++/java中的for循環(huán)有括號包括
例如:
for(int a=0;a<100;a++)
{
int b=a;
}
而在python中沒有這樣的結(jié)構(gòu),例如:
for iterating_var in sequence:
statements(s)
5.在c/c++c/java中兩行代碼之間可以不嚴(yán)格遵循錯(cuò)位的結(jié)構(gòu),例如:
for(int a=0;a<100;a++)
{
int b=a;
}
而在python中沒有錯(cuò)位的話,會進(jìn)行報(bào)錯(cuò)
6.在C語言中,聲明全局變量,如果值是恒定的,那么可以直接用#define聲明,
如果只是聲明全局,并且變量的值是可變的,那么直接類似int a 就可以了,
在python中,聲明全局變量時(shí),需要加上global,類似global a,
在函數(shù)里面使用的時(shí)候需要先聲明global a ,
否則直接用a那么python會重新創(chuàng)建一個(gè)新的本地對象并將新的值賦值給他,
原來的全局變量的值并不變化
例如:
global a
a = 3
def func():
a = 4
print(a)
func()
print(a)
運(yùn)行結(jié)果:
3
global a
a = 3
def func():
global a
a = 4
print(a)
func()
print(a)
運(yùn)行結(jié)果
4
7.在C語言中使用那個(gè)庫函數(shù),需要引入頭文件用include引入,
而在python中需要引入別的模塊或者函數(shù)時(shí)需要用import引入。
兩者的不同機(jī)制是,C語言中include是告訴預(yù)處理器,
這個(gè)include指定的文件的內(nèi)容,要當(dāng)作本地源文件出現(xiàn)過,
例如:import "a.h"
而python中的import可以通過簡單的import 導(dǎo)入,
或者是
import numpy as np
8.在函數(shù)的結(jié)構(gòu)上
python:
def functionname( parameters ):
"函數(shù)_文檔字符串"
function_suite
return [expression]
java:
修飾符 返回值類型 方法名(參數(shù)類型 參數(shù)名){
...
方法體
...
return 返回值;
}
9.python是全動態(tài)性的,可以在運(yùn)行時(shí)自己修改自己的代碼,
java只能通過變通方法實(shí)現(xiàn)。python的變量是動態(tài)的,
而java的變量是靜態(tài)的,需要事先聲明,
10.在注釋的方式不一樣
例如在java中
//int a=0;
在python中
#a=0