CopyMemory()函數(shù)功能描述:將一塊內(nèi)存的數(shù)據(jù)從一個(gè)位置復(fù)制到另一個(gè)位置。
創(chuàng)新互聯(lián)公司從2013年創(chuàng)立,先為蓬安等服務(wù)建站,蓬安等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢(xún)服務(wù)。為蓬安企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
函數(shù)原型
VOID CopyMemory(PVOID Destination,CONST VOID *Source,SIZE_T Length);
參數(shù)
Destination要復(fù)制內(nèi)存塊的目的地址。
Source要復(fù)制內(nèi)存塊的源地址。
Length指定要復(fù)制內(nèi)存塊的大小,單位為字節(jié)
返回值該函數(shù)為VOID型,沒(méi)有返回值。
備注如果目的塊與源塊有交疊,結(jié)果是不可預(yù)料的,使用MoveMemory可以解決這個(gè)問(wèn)題。
注意一點(diǎn)CopyMemory和MoveMemory不過(guò)是RtlMoveMemory的一個(gè)別名而已
示例代碼段
char szname[50]="陣雨";
char szfriend[]="polelf,oo";
CopyMemory(szname+4,szfriend,10);
OutputDebugString(szname);//輸出結(jié)果為"陣雨polelf,oo"
vb6的聲明:
Private Declare Sub CopyMemory Lib "kernel32" Alias"RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length AsLong)
可以查看附件,或則使用以下代碼。應(yīng)該注釋的滿(mǎn)全了。
隨便建一個(gè)窗口工程,窗口代碼帖入以下代碼。
Imports?System.IO
Imports?System.Text
Imports?System.Reflection
Public?Class?Form1
Const?ResName?As?String?=?"123.txt"?'?需要保存的資源名
Const?BufferSize?As?Integer?=?4096??'?復(fù)制時(shí)緩沖的大小
Private?Sub?Demo()
'?變量聲明
Dim?strDisplayText?As?StringBuilder?'?保存輸出信息
Dim?strResName?As?String????????????'?保存目標(biāo)資源的名稱(chēng)
'?變量初始化
strDisplayText?=?New?StringBuilder()
strResName?=?String.Empty
'?獲取所有資源
strDisplayText.AppendLine("文件中存在以下資源:")
For?Each?strName?As?String?In?Assembly.GetExecutingAssembly.GetManifestResourceNames()
strDisplayText.AppendLine("??"??strName)
'?獲得目標(biāo)資源的全名
If?strName.EndsWith("."??ResName)?Then
strResName?=?strName
End?If
Next
'?目標(biāo)資源不存在
strDisplayText.AppendLine()
If?strResName?=?String.Empty?Then
strDisplayText.AppendLine("抱歉,沒(méi)有找名為"""??ResName??"""的資源")
Else?'?復(fù)制資源的代碼
'?打開(kāi)資源文件,在End?Using的時(shí)候自動(dòng)關(guān)閉。
Using?ms?As?UnmanagedMemoryStream?=?Assembly.GetExecutingAssembly.GetManifestResourceStream(strResName)
'?打開(kāi)磁盤(pán)文件,在End?Using的時(shí)候自動(dòng)關(guān)閉。
Using?fs?As?New?FileStream("C:\"??ResName,?FileMode.Create)
'?變量聲明
Dim?Buffer(BufferSize?-?1)?As?Byte??'?復(fù)制文件時(shí)的緩沖數(shù)組
Dim?ReadCount?As?Integer????????????'?此次讀取數(shù)據(jù)的數(shù)量
'?還有數(shù)據(jù)可以讀取的情況,一直循環(huán)
ReadCount?=?ms.Read(Buffer,?0,?BufferSize)
While?ReadCount??0
fs.Write(Buffer,?0,?ReadCount)?'?寫(xiě)入到磁盤(pán)文件
ReadCount?=?ms.Read(Buffer,?0,?BufferSize)
End?While
End?Using
End?Using
strDisplayText.AppendLine("文件已經(jīng)復(fù)制完畢。")
End?If
'?顯示消息
MessageBox.Show(strDisplayText.ToString())
End?Sub
Private?Sub?Form1_Load(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?MyBase.Load
Call?Demo()
End
End?Sub
End?Class
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim ListboxTotalItem As Integer = ListBox1.Items.Count - 1
Dim a(ListboxTotalItem) As String
For i As Integer = 0 To ListboxTotalItem
a(i) = i
Next
Label1.Text = a(5)
End Sub
End Class
-------------
一個(gè)Form1
一個(gè)Label1
一個(gè)Listbox1
一個(gè)Button1
在Listbox1中加入10個(gè)值
-------------
只是一個(gè)演示,其他的要靠自己。
你這個(gè)Text()()是一個(gè)二維數(shù)組?
將數(shù)字直接定義成text box類(lèi)型,并將己所添加的textbox實(shí)例復(fù)制給數(shù)組的相關(guān)項(xiàng),這樣就能通過(guò)數(shù)組的形式訪(fǎng)問(wèn)了。。。
當(dāng)前標(biāo)題:vb.net數(shù)組復(fù)制 c數(shù)組復(fù)制
標(biāo)題來(lái)源:http://vcdvsql.cn/article24/hpihje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、微信小程序、網(wǎng)站策劃、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)