fillchar在pascal中的應用

2023-01-29 02:21:04 字數 5019 閱讀 3429

1樓:匿名使用者

fillchar(arr,y,x):將陣列arr所佔用的記憶體y個位元組用x填充。通常與sizeof()函式連用。

sizeof()返回陣列所佔的位元組總數。fillchar(arr,sizeof(a),x):即可填充陣列所在的全部記憶體塊。

可以將該陣列所對應的位元組每個位元組都填充成x,達到集體賦值的效果。例如var a:array[1..

100000,1..100000] of byte;如果要將本陣列全部賦為1的話for迴圈需要10^10次,而fillchar(a,sizeof(a),1):就能瞬間賦值完。

將每個位元組變成00000001,也就是數字1。注意如果有的變數佔用了多個位元組的話比如longint,int64型別,fillchar(a,sizeof(a),1):就會將每個位元組都賦值為1,就變成了00000001 00000001也就是257

2樓:匿名使用者

fillchar,整體賦值原型:fillchar(arr,sizeof(arr),x):表示對arr陣列賦值為x

pascal中fillchar()的意義是什麼

3樓:ぁdragon族

fillchar(a,sizeof(a),0);

意思就是把陣列a的每一個單位賦初值為0

類似的還可以寫成

fillchar(s,sizeof(s),'');

就是把s陣列的每一個單位賦為空的意思

4樓:

system單元的fillchar過程用來把指定記憶體段中的所有位元組賦為相同的值,它通常用來清空資料。fillchar的格式是fillchar(var x; count: word; value),x是指定的記憶體段,如陣列變數,count是記憶體段的大小,即位元組數,value是填充的值,可以是byte、char或boolean等單位元組型別的值。

如果你要把元素型別為shortint、integer或longint的陣列清空為0,可以把value設為0,如果要全部元素賦為-1,可以把value設為255。下面是一個簡單的樣例:

varp: array[0..999] of longint;

begin

fillchar(p, sizeof(p), 255);

writeln(p[999]);

en阿不好意思,好像和第一位的答案重複了~~~事先宣告

我不是混分的

5樓:東北白骨精

如何使用fillchar?

system單元的fillchar過程用來把指定記憶體段中的所有位元組賦為相同的值,它通常用來清空資料。fillchar的格式是fillchar(var x; count: word; value),x是指定的記憶體段,如陣列變數,count是記憶體段的大小,即位元組數,value是填充的值,可以是byte、char或boolean等單位元組型別的值。

如果你要把元素型別為shortint、integer或longint的陣列清空為0,可以把value設為0,如果要全部元素賦為-1,可以把value設為255。

下面是一個簡單的樣例:

varp: array[0..999] of longint;

begin

fillchar(p, sizeof(p), 0);

writeln(p[999]);

end.

var a:array [1..10] of arrtype;

執行fillchar(a,sizeof(a),0);

當arrtype為

1.real(其他差不多) 使得a中的元素全部成為0.0

2.integer(byte,word,longint,shortint都相同) 全部為0

3.boolean 全部為false

4.char 全部為#0

執行fillchar(a,size(a),1);

寫幾個特殊的

1.integer 全部為157(不知道為什麼)

2.real 很大的一個數,同上。

3.boolean 全部為true

4.byte,shortint 全部為1,所以integer不行可以暫時用這兩個嘛。 要不然就減去156

pascal中fillchar和fillword的用法 謝謝 20

6樓:木野輕風

置為0: fillchar(a,sizeof(a),0); (arrtype為任意型別)

置為maxint: fillword(a,sizeof(a)div 2,maxint);

(arrtype為integer)

置為maxlongint: filldword(a,sizeof(a)div 4,maxlongint); (arrtype為longint)

注意陣列元素的型別

c++ 初始化陣列 相當於pascal裡的fillchar的那個東西c++怎麼寫?好像是個m開頭的東西。

7樓:匿名使用者

1全部清0通常用

int a[100] =;

類似這樣

或者memset(a,0, sizeof(a)); 這個有點類似於fillchar,按位元組對記憶體進行賦值,也就是fill char

中間的0可以是其他字元

陣列可以使用具體元素初始化

如int a[10] = ;

沒寫的就預設為0

也可以寫成

int b =;

按初始化元素的個數指定陣列的大小

字串陣列

可以char c[100]="123123";

也可以使用strcpy

方法多多,看你具體對應哪一種

8樓:匿名使用者

初始化陣列?

你是說動態陣列麼?

如果是的話就是包含#include

然後用malloc函式來動態分配記憶體。

希望我猜中了。

9樓:匿名使用者

c++沒有函式來初始化,你只有用迴圈語句了

pascal中的fillchar(n,sizeof(n),$80)什麼意思

10樓:匿名使用者

這是一個過程,表示把n陣列每個位賦值為$80(其中sizeof(n)表示次數,函式sizeof()功能是返回變數所佔的總位元組數)

pascal中可以直接表示十六進位制數,格式是$+數字,$80就是十六進位制數80,也就是十進位制數128

11樓:匿名使用者

fillchar(n,sizeof(n),$80)

將n這個 結構體的每個位元組都寫成$80,$80代表是16進位制80 =10進位制的128

12樓:匿名使用者

用writeln(n[1]);你就曉得$80是128了

pascal語言中fillword和fillchar有區別嗎

13樓:娜莉

有區別。

fillchar,fillword,filldword,fillbyte用途舉例

fillchar 是按照位元組填充

fillword ,filldword是按照需要長度的位元組來填充

fillchar:

陣列清0 fillchar(a,sizeof(a),0);

陣列賦值-1 fillchar(a,sizeof(a),$ff);

fillbyte:

通常用fillbyte來給元素型別為byte的陣列賦初值。

陣列賦值255 fillbyte(a,sizeof(a),255);

注:a陣列為byte型別

fillword:

和fillbyte相仿.

但每次賦的是一個值為value的雙位元組無符號整數(word型別),所以每2個位元組賦一次值,而fillbyte是每一個位元組就賦一次值。

陣列賦值32767 fillword(a,sizeof(a) div 2,32767);

注:div 2不能漏

filldword:

與fillbyte相仿。dword意思是佔用4個位元組的整型,具體來講可以是常用的longint型別。

陣列賦值maxlongint filldword(a,sizeof(a) div 4,2147483647)。

14樓:

當然有了

這裡有更多的:

fillchar,fillword,filldword,fillbyte用途舉例

fillchar 是按照位元組填充

fillword ,filldword是按照需要長度的位元組來填充

fillchar:

陣列清0 fillchar(a,sizeof(a),0);

陣列賦值-1 fillchar(a,sizeof(a),$ff);

fillbyte:

通常用fillbyte來給元素型別為byte的陣列賦初值。

陣列賦值255 fillbyte(a,sizeof(a),255);

注:a陣列為byte型別

fillword:

和fillbyte相仿.

但每次賦的是一個值為value的雙位元組無符號整數(word型別),所以每2個位元組賦一次值,而fillbyte是每一個位元組就賦一次值。

陣列賦值32767 fillword(a,sizeof(a) div 2,32767);

注:div 2不能漏

filldword:

與fillbyte相仿。dword意思是佔用4個位元組的整型,具體來講可以是常用的longint型別。

陣列賦值maxlongint filldword(a,sizeof(a) div 4,2147483647);

pascal題目,Pascal題目

1.var a,b,i,m,n longint t text begin a 0 b 0 readln m for i 1 to m do begin readln n if n mod 2 0 then a a n else b b n end writeln b writeln a end.2....

在pascal中怎樣建立程式設計思想

請問您是要問什麼?這個問題過於大了.我是寫pascal的,覺得pascal一定要注意各個部分的統籌兼顧變數,過程,函式,呼叫庫,都是要注意協調的對於初學者,一定要認真除錯每個程式,明白自己為什麼對,為什麼錯最後附上一個pascal裡面的exit code 大全.我是寫fp的 1無效dos功能號 2檔...

pascal數字圖形輸出,PASCAL數字圖形輸出

readln n k 0 i 0 j 0 while k n do begin inc i for j 1 to i do begin inc k write k if j i then write if k n then break end writeln if k n then break en...