c語言可以實現這樣的操作嗎?如果不能,怎樣修改

時間 2021-07-21 03:38:37

1樓:匿名使用者

不能,陣列內定義的陣列數目一定要是常量。

但可以用malloc函式,函式呼叫是可以的。

比如你要申請int型的未知個數陣列。可以以下程式#include

#include

main()

2樓:天堂妹兒

不能,因為陣列的長度必須是一個常數,如果你想改變陣列長度,可以先設個全域性變數,然後再設一個比這個全域性變數小的值作為陣列的長度,例如:

先定義一個全域性變數n,作為陣列a的最大長度,這裡讓陣列a的最大長度為500

#define n 500

int a[n]; //定義陣列a

int n,k;

scanf("%d",&n); 這個n是你要輸入的陣列長度,n要小於n,否則是要溢位的

for(k=0;k

c語言的巨集定義能不能修改

3樓:匿名使用者

你定義了。在程式中是不能改變的。只能在定義的地方修改。程式在預處理期間進行值替換。

4樓:德眾

比如巨集定義在一開頭定義# define n 10,那麼接下來所有的n都是10,巨集定義一旦定下除非你修改**否則都無法修改巨集定義

5樓:成都中公優就業

巨集定義在程式內是不可改變的,只能在定義的地方只能在定義的地方修改。程式在預處理期間進行值替換。

舉例說明

#define n 20

這個就是巨集定義,當然可以修改,例如這個n代表輸入陣列個數,在主程式中void main()

就可以這樣用,在編譯時,程式會自動替換掉n為20,既你巨集定義的值;只會花費編譯時間。如果你想修改陣列大小隻需修改

#define n 30;

即可,當然識別符號n也可以修改。‍

6樓:暴風一號

當然可以修改!

例如:#define image_w 500就可以修改為

#define image_w 700

7樓:匿名使用者

巨集定義就是指在main函式之前讀一某些變數進行定義,便於在編寫時的使用,同時在修改的時候也會很方便的,你如說我把m定義成(x*x+3*x),在以後的使用中,我可以直接用m就行了,很方便的,而且如果修改的話不用全改,只需要在巨集定義那裡改了就行

8樓:匿名使用者

#define n 20

這個就是巨集定義,當然可以修改,

例如這個n代表輸入陣列個數,在主程式中

void main()

就可以這樣用,在編譯時,程式會自動替換掉n為20,既你巨集定義的值;只會花費編譯時間。如果你想修改陣列大小隻需修改

#define n 30;即可,當然識別符號n也可以修改。

c語言可以直接對硬體進行操作嗎,C語言可以直接對硬體進行操作嗎

不能。首先,c語言不能夠直接對硬體進行操作。從本質上來說,連組合語言都不可以。只有機器語言能夠直接操作硬體。其次,c語言要操作硬體是必須經過一系列的編譯轉換。最終它會成為0101的機械碼,這個時候它根本不是我們所能夠理解的c語言了。以gcc編譯器為例,這個可以分為四步。第一步是預處理,包括語法檢查等...

線性表的基本操作c語言實現

半清醒丶不言語 如下 標頭檔案 2 1.h ifndef 2 1 h define 2 1 h typedef void seqlist typedef void seqlistnode 建立線性表 seqlist seqlist create int capacity 銷燬線性表 void seq...

c語言 迴圈部分,c語言中的迴圈如何實現

我承認我是來蹭分的哈。include int fac int n double n ieme terme int n int main ifn while return 0 int fac int n else fac double n ieme terme int n n ieme terme l...