程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> Visual Basic語言 >> VB綜合教程 >> 用Mid$命令超速字符串添加操作

用Mid$命令超速字符串添加操作

編輯:VB綜合教程
大家都知道,&操作符的執行速度是相當慢的,特別是處理長字符串時。當必須重復地在同一變量上附加字符時,有一個基於Mid$命令的技巧可以使用。基本思路就是:預留一個足夠長的空間存放操作的結果。下面是應用這個技術的一個例子。

假設要建立一個字符串,它要附加從1開始的10000個整數:"1234567...9999

10000"。下面是最簡單的實現代碼:
  res=""
  Fori=1to10000:res=res&Str(i):Next
  
  代碼雖然簡單,但問題也很明顯:Res變量將被重分配10000次。下面的代碼實現同樣的目的,但效果明顯好轉:
  
  DimresAsString
  DimiAsLong
  DimindexAsLong

'預留足夠長的緩沖空間
  res=Space(90000)
  
  '指針變量,指出在哪裡插入字符串
  index=1

'循環開始
  Fori=1to10000
  substr=Str(i)
  length=Len(substr)

'填充字符串的相應區間段數值
  Mid$(res,index,length)=substr

'調整指針變量
  index=index length

Next

'刪除多余字符
  res=Left$(res,index-1)
  
  測試表明:在一個333MHz的計算機上,前段代碼執行時間為2.2秒,後者僅僅為0.08秒!代碼雖然長了些,可是速度卻提高了25倍之多。呵呵,由此看來:代碼也不可貌相啊

->

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved