亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sample.dsm

?? c語言編程軟件vc6.0中文綠色版_vc6.0官方下載
?? DSM
?? 第 1 頁 / 共 2 頁
字號:
'------------------------------------------------------------------------------
'FILE DESCRIPTION: SAMPLE.DSM is a collection of sample editor macros.
'------------------------------------------------------------------------------

'This routine has many uses if you are trying to determine the type of source 
'	file.
'Return value:  0 Unknown file type
'               1 C-related file, this includes .c, .cpp, .cxx, .h, .hpp, .hxx
'               2 Java-related file, this includes .jav, .java
'               3 ODL-style file, .odl, .idl
'               4 Resource file, .rc, .rc2
'               5 HTML-style file, this includes .html, and .htm
'               6 VBS-style file, .dsm
'               7 Def-style file, .def
'USE: Pass this function the document that you wish to get information for.
Function FileType (ByVal doc)
	ext = doc.Name
	FileType = 0
	pos = Instr(ext, ".")
	if pos > 0 then
		Do While pos <> 1
			ext = Mid(ext, pos, Len(ext) - pos + 1)
			pos = Instr(ext, ".")
		Loop
		ext = LCase(ext)
	end if
	If ext = ".rc" Or ext = ".rc2" Then
		FileType = 4
	ElseIf doc.Language = dsCPP Then
		FileType = 1
	ElseIf doc.Language = dsJava Then
		FileType = 2
	ElseIf doc.Language = dsIDL Then
		FileType = 3
	ElseIf doc.Language = dsHTML_IE3 Or doc.Language = dsHTML_RFC1866 Then
		FileType = 5  
	ElseIf doc.Language = dsVBSMacro Then ' 
		FileType = 6  
	ElseIf ext = ".def" Then
		FileType = 7
	Else 
		FileType = 0
	End If 
End Function


'This routine has many uses if you are trying to determine if an identifier
'  is a valid C identifier.
'  These identifiers do not include qualification syntax, for example:
'  foo.bar is not valid
'  foo is valid
'Parameters:    String to test for a valid C identifier.
'Return value:  True: passed parameter is a valid C identifier.
'               False: passed parameter is not a valid C identifier.
Function ValidId(Id)
	ValidId = True

	'Don't permit an empty string
	' (how can you identify nothing with something?)
	if Id = "" then 
	  ValidID = False
	  Exit Function
	End If

	For i = 1 To Len(Id)
	  if Mid(Id, i, 1) < "a" Or Mid(Id, i, 1) > "z" Then
		if Mid(Id, i, 1) < "A" Or Mid(Id, i, 1) > "Z" Then
			if Mid(Id, i, 1) < "0" Or Mid(Id, i, 1) > "9" Then
				if Mid(Id, i, 1) <> "_" Then
					ValidId = False
				End if
			End If
		End If	
	  End If
	Next
	If IsNumeric(Left(Id, 1)) = True Then
		ValidId = False
	End If
End Function


Dim ParamArr ()  ' Dynamic array to store function arguments.

Sub AddFunctionDescription ( )
'DESCRIPTION: Creates a comment block for the currently selected C/C++ function prototype

	'Throughout this file, ActiveDocument.Selection is used in place 
	'of ActiveDocument.Selection.Text.  The two are equivalent, and can 
	'be used interchangeably. The reason for the equivalence is that
	'Text is regarded as the default property to use. All uses of
	'ActiveDocument.Selection without any other property default to the Text
	'property.
	if ActiveDocument.Language = dsCPP Then
		Header = StripTabs(Trim(ActiveDocument.Selection))

		'Get the function return type.
		if Header <> "" then
			Reti = InStr(Header, " ")
			Loc = InStr(Header, "(")
			if Reti < Loc Then
			  RetTp = Left(Header, Reti)
			  Header = Right(Header, Len(Header) - Reti)
			End If

			'Get the function name.
			Loc = InStr(Header, "(") - 1
			Loc2 = InStr(Header, ")")
			if Loc > 0 And Loc2 > 0 then 'make sure there is a '(' and a ')'
				fcName = Left(Header, Loc)
				Header = Right(Header, Len(Header) - Len(fcName))

				'Do we have storage type on the return type?
				Trim (fcName)
				If InStr(fcName," ") <> 0 Then
					retTp = retTp + Left(fcName,InStr (fcName," "))
					fcName = Right(fcName, Len(fcName) - InStr(fcName," "))
				End If

				'Get the function parameters.
				iPrm = 0
				iPrmA = 0
				prms = Header 

				'Count the number of parameters. 
				Do While InStr(prms, ",") <> 0
					iPrm = iPrm + 1
					prms = Right(prms, Len(prms) - InStr(prms, ",")) 
				Loop 
				
				'Store the parameter list in the array.
				If iPrm > 0 Then  ' If multiple params.
					iPrm = iPrm + 1
					iPrmA = iPrm
					Redim ParamArr(iPrm)
					Do While InStr(header, ",") <> 0
						ParamArr(iPrm) = Left(Header, InStr (Header, ",") - 1)
						'Remove brace from first parameter.
						If InStr(ParamArr(iPrm), " (") <> 0 Then
							ParamArr(iPrm) = Right(ParamArr(iPrm), _
									Len(ParamArr(iPrm))-InStr(ParamArr(iPrm)," ("))
							Trim(ParamArr(iPrm))
						End If
						Header = Right(Header, Len(Header) - InStr(Header,","))
						iPrm = iPrm - 1 
						Loop 
					ParamArr(iPrm) = Header 
					'Remove trailing brace from last parameter.
					If InStr(ParamArr(iPrm), ")") <> 0 Then
						ParamArr(iPrm) = Left(ParamArr(iPrm), _
								InStr(ParamArr(iPrm), ")") - 1)
						Trim(ParamArr(iPrm))
					End If
				Else 'Possibly one param.
					Redim ParamArr(1)
					Header = Right(Header, Len(Header) - 1) ' Strip the first brace.
					Trim(Header)
					ParamArr(1) = StripTabs(Header)
					If InStr(ParamArr(1), ")") <> 1 Then
						ParamArr(1) = Left(ParamArr(1), InStr(ParamArr(1), ")") - 1)
						Trim(ParamArr(1))
						iPrmA = 1
					End If
				End If

				'Position the cursor one line above the selected text.
				ActiveDocument.Selection.LineUp
				ActiveDocument.Selection.LineDown
				ActiveDocument.Selection.StartOfLine
				ActiveDocument.Selection = vbLf

				Descr = "// Function name	: " + fcName + _
						vbLf + "// Description	    : " + _ 
						vbLf +  "// Return type		: " + RetTp + vbLf
				
				'Print the parameter list. 
				Last = iPrmA
				Do While iPrmA <> 0
					'Remove a line feed from any of the arguments.
					If InStr(ParamArr(iPrmA), vbLf) <> 0 Then
						ParamArr(iPrmA) = Right(ParamArr(iPrmA), _
								(Len(ParamArr(iPrmA)) - _
								InStr(ParamArr(iPrmA), vbLf)))
						Trim(ParamArr(iPrmA))
					End If
					ParamArr(iPrmA) = StripTabs(ParamArr(iPrmA))
					'If there are 2+ parameters, the first parameter will 
					'have a '(' prepended to it, remove it here:
					if iPrmA = Last AND Last <> 1 then
					  ParamArr(iPrmA) = Right(ParamArr(iPrmA), _
							Len(ParamArr(iPrmA)) - 1)
					End If
					Descr = Descr + "// Argument         : " + _
							ParamArr(iPrmA) + vbLf
					iPrmA = iPrmA - 1
				Loop
				ActiveDocument.Selection = Descr
			Else
				MsgBox("It is possible that the function you are trying to"+_
						" work with has a syntax error.")
			End if
		End If
	Else
		MsgBox("You need to have an active C/C++ document open"+ _
				vbLF+"with the function prototype selected.")
	End If
End Sub

'Strips the leading tab spaces. 
Function StripTabs (ByVal MyStr)
	Do While InStr(MyStr, vbTab) <> 0
		MyStr = Right(MyStr, Len(MyStr) - InStr(MyStr, vbTab)) 
	Loop 
	StripTabs = Trim(MyStr)
End Function

Sub ToggleCommentStyle ( )
'DESCRIPTION: Toggles between comment styles /* and //.

	TmpBlock = ""
	CmtBlock = ActiveDocument.Selection
	TypeOfFile = FileType(ActiveDocument)
	If TypeOfFile > 0 And TypeOfFile < 5 Then   'C/C++ style comment.
		'Get the first two characters of the comment block.
		Trim(CmtBlock)
		If Instr(CmtBlock,"//") <> 0 Then 
			Do While Instr (CmtBlock,"//") <> 0
				TmpBlock = TmpBlock + Left (CmtBlock, Instr (CmtBlock,"//") - 1)
				CmtBlock = Right(CmtBlock, (Len(CmtBlock) - (Instr(CmtBlock,_
						"//") + 1)))
			Loop
			CmtBlock = "/*" + TmpBlock + CmtBlock + "*/"
		ElseIf Instr(CmtBlock, "/*") <> 0 Then 
			CmtBlock = Right(CmtBlock, Len(CmtBlock) - (Instr(CmtBlock,"/*")_
					+ 1))
			Do While Instr (CmtBlock, vbLf) <> 0
				TmpBlock = TmpBlock + Left (CmtBlock, Instr(CmtBlock, vbLf))_
						+ "//"
				CmtBlock = Right(CmtBlock, (Len(CmtBlock) - (Instr(CmtBlock,_
						vbLf))))
			Loop
			CmtBlock = "//" + TmpBlock + Trim(CmtBlock)
			CmtBlock = Left(CmtBlock, Instr(CmtBlock,"*/")-1)
		End If
		ActiveDocument.Selection.Delete
		ActiveDocument.Selection = CmtBlock
	Else
		MsgBox "This macro does not work on this type of file."
	End If
	
End Sub



Sub AddRevisionMarks ( )
'DESCRIPTION: Adds comments to a file that describe the changes made.

	'This routine adds a new comment block to the top of a file, where the 
	' programmer can place revision marks to describe the changes made to the file.
	'The rules this routine uses are as follows:
	' 1) Start at the top of the file.
	' 2) Scan through each line; if the current line starts with a comment,
	'      advance to the next line..
	' 3) If we are currently in a group comment block, keep advancing until
	'     the end of the block is found.
	' 4) If we are in a line item comment (e.g.: //, ', rem, etc), keep advancing
	'     until a line that does not start with a comment is found.
	'     By 'start with a comment', it is meant a line, where after
	'     stripping off spaces and tabs from the beginning, the first set of
	'     characters is not a comment delimiter.
	' 5) Insert a blank line; this allows the next invocation of this macro
	'     to place the newer revision mark before all others.
	' 6) Insert the revision block.

	'Change this to the programmer's name for a default.
	DefaultUserName = "..."

	'Because the user may not have closed a comment (e.g. a /* without a */),
	' try to protect ourselves from an infinite loop...
	BreakAfter = 10 'Max number of lines to look at scan before aborting
	CurrentCount = 1

	BeginComment = "" 'The token for the specified language for the beginning
						' of a comment.
	EndComment = ""   'Same, except for the end of a comment.
	EveryLine = ""    'Does the comment mark need to be placed on every line
						' (VBS, DEF types)?

	'First, make sure the active document is a text window
	' (Not really necessary, but good practice).
	If ActiveDocument.Type = "Text" Then
		TypeOfFile = FileType(ActiveDocument)
    
		'Set ourselves at the very top of the document.
		'This also clears any selection made.
		ActiveDocument.Selection.StartOfDocument
		ActiveDocument.Selection.SelectLine
		CurrText = ActiveDocument.Selection
		CurrText = LTrim(CurrText)
    
		'All of the following do relatively the same thing, 
		' except they look for different comment types.
		If TypeOfFile > 0 And TypeOfFile < 5 Then       'C/C++ family of code
			ContSearch = True
			BeginComment = "/*"
			EndComment = "*/"
			EveryLine = " "

			'In C/C++ style code, we need to look for a //;
			'  if not found, then look for a /*.
			Do
				ActiveDocument.Selection = CurrText
				If InStr(CurrText, "//") = 1 Then   'is a "//" available?
					ActiveDocument.Selection.SelectLine
					CurrText = LTrim(ActiveDocument.Selection) 'Remove whitespace.
					ContSearch = False   ' Looking at // style comments, 
											'don't look for a /* style.
				Else
					Exit Do
				End If
			Loop

			If ContSearch = False Then
				ActiveDocument.Selection.LineUp
			End If

			'When the method ActiveDocument.Selection.SelectLine is called,
			'  it is the same as when you click the mouse in the margin; it
			'  selects the whole line, including the carriage return.
			'  Because of this, the cursor comes down to the next line, which
			'  can really confuse this algorithm. So in a number of places, 
			'  you will see a grouping of LineUp/LineDown commands. By executing
			'  these commands, the cursor is moved down, which clears the current
			'  selection (including getting us past the carriage return),
			'  then moves us back up, thus putting us on the same line. This
			'  removesthe danger of skipping a line (which is what will
			'  happen without the LineUp/LineDown combination).
			If ContSearch = True Then
				ActiveDocument.Selection.StartOfDocument
				'Prime the loop with the first line.
				ActiveDocument.Selection.SelectLine
				CurrText = ActiveDocument.Selection           
				ActiveDocument.Selection.LineDown
				ActiveDocument.Selection.LineUp
				'Remove leading whitespace.
				CurrText = LTrim(CurrText)      
				'Does line start with a /*?              
				If InStr(CurrText,"/*") = 1 Then
					while (InStr(CurrText, "*/") = 0) And _
					      (BreakAfter > CurrentCount)
						ActiveDocument.Selection.SelectLine
						CurrText = ActiveDocument.Selection
						CurrText = LTrim(CurrText)                              
						ActiveDocument.Selection.LineDown
						ActiveDocument.Selection.LineUp    
						CurrentCount = CurrentCount + 1
					wend
					If (BreakAfter > CurrentCount) Then
						'Exit the loop because the search has gone on for an 
						'  unreasonable number of lines.
						MsgBox "Could not find a closing comment mark"
					End If
				End If
			End If

		'The code for these is really just a copy of that from the 
		'  C/C++ section...
		  
		ElseIf TypeOfFile = 5 Then                      'HTML code
			BeginComment = "<!--"
			EndComment = "-->"
			EveryLine = "    "
			If InStr(CurrText,"<!--") = 1 Then
				If InStr(CurrText,"-->") <> 0 Then
					ActiveDocument.Selection.LineDown
				Else
					Do
						ActiveDocument.Selection.SelectLine
						CurrText = ActiveDocument.Selection
						CurrText = Left(CurrText, Len(CurrText) - 2)
						ActiveDocument.Selection = CurrText + vbLf
						If InStr(CurrText, "-->") Then
							Exit Do
						End If
					Loop

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲1区2区3区4区| 亚洲乱码一区二区三区在线观看| 欧美电影一区二区三区| 成人禁用看黄a在线| 国产在线精品一区二区夜色| 蜜臀精品一区二区三区在线观看| 亚洲国产裸拍裸体视频在线观看乱了| 国产精品传媒入口麻豆| 自拍偷拍欧美激情| 亚洲一区二区欧美激情| 三级精品在线观看| 麻豆精品视频在线观看| 国产精品资源在线观看| 成人福利在线看| 91麻豆.com| 欧美精品99久久久**| 日韩三级在线免费观看| 亚洲精品在线网站| 国产精品久久久久影视| 亚洲黄色小视频| 日韩国产欧美三级| 国产一区二区精品久久91| 成人午夜激情在线| 欧美特级限制片免费在线观看| 在线91免费看| 久久―日本道色综合久久| 亚洲色图在线播放| 日韩电影免费在线观看网站| 国产一区二区三区四区五区美女 | 欧美性生活大片视频| 在线观看亚洲a| 精品国产乱码久久久久久久| 亚洲视频在线一区观看| 天堂午夜影视日韩欧美一区二区| 精品中文字幕一区二区| 92国产精品观看| 日韩午夜电影av| 成人免费一区二区三区视频| 亚洲福利视频一区| 东方欧美亚洲色图在线| 欧美精品在线观看播放| 中文字幕一区二区三中文字幕| 日韩在线一区二区三区| 99热99精品| 精品黑人一区二区三区久久| 亚洲一区在线免费观看| 成人理论电影网| 精品国内二区三区| 亚洲第一福利一区| aaa亚洲精品一二三区| 欧美大片在线观看一区| 一区二区三区四区激情 | 亚洲色图在线播放| 国产精品自在欧美一区| 4438成人网| 伊人夜夜躁av伊人久久| 成人综合婷婷国产精品久久| 欧美一区二区播放| 亚洲国产精品久久久男人的天堂 | 亚洲一区在线观看网站| 国产不卡视频在线观看| 欧美成人r级一区二区三区| 亚洲欧美福利一区二区| 成人丝袜18视频在线观看| 久久综合精品国产一区二区三区| 婷婷成人激情在线网| 一本到不卡免费一区二区| 国产精品乱人伦一区二区| 国产一区二区精品久久99| 2020国产精品| 国产露脸91国语对白| 日韩精品一区二区三区中文精品| 丝袜亚洲另类欧美| 欧美日韩一二区| 亚洲二区在线视频| 欧美日韩一级片网站| 天天综合色天天综合色h| 欧美丰满少妇xxxxx高潮对白| 亚洲电影中文字幕在线观看| 欧美日韩国产另类不卡| 奇米一区二区三区av| 91精品久久久久久久久99蜜臂| 日本网站在线观看一区二区三区| 欧美日本一区二区三区| 青青草国产成人av片免费| 欧美一区二区日韩| 九九**精品视频免费播放| 精品国产乱码久久久久久久久 | 精品久久久久久久久久久久包黑料 | 欧美变态tickling挠脚心| 久久精品噜噜噜成人av农村| 欧美一级黄色录像| 国产成人在线视频网站| 自拍偷拍亚洲综合| 欧美精品日韩一本| 国产精品一区二区男女羞羞无遮挡| 国产欧美日韩精品a在线观看| 暴力调教一区二区三区| 亚洲影院久久精品| 精品日本一线二线三线不卡| 国产成人精品在线看| 一区二区三区在线播放| 欧美在线观看禁18| 久久爱www久久做| 亚洲国产精品精华液2区45| 91香蕉视频黄| 日韩成人免费电影| 中文字幕在线不卡一区| 欧美日韩一区中文字幕| 国产精品123| 一区二区三区在线影院| 久久在线观看免费| 91九色最新地址| 国产在线精品一区二区不卡了 | 欧美性受xxxx黑人xyx| 日本欧美韩国一区三区| 国产精品久久久久久久久图文区 | 国产精品久久久久久久久久免费看 | av在线不卡电影| 日韩精品一二三区| 亚洲三级在线免费观看| 精品国产伦一区二区三区观看体验| av在线播放不卡| 久久99国产精品久久99果冻传媒| 亚洲少妇30p| 久久久久久久久久久电影| 欧美日韩中文另类| www.激情成人| 国产伦精品一区二区三区免费迷 | 欧美日韩二区三区| 国产美女在线观看一区| 午夜国产不卡在线观看视频| 中文在线免费一区三区高中清不卡| 欧美精品色一区二区三区| 91视频免费观看| 国产91精品精华液一区二区三区| 奇米综合一区二区三区精品视频 | 日韩精品一区二区在线观看| 欧美性生交片4| 91福利小视频| 91美女精品福利| www.爱久久.com| 国产**成人网毛片九色 | 蜜臀av性久久久久蜜臀aⅴ四虎| 亚洲女子a中天字幕| 中文字幕一区二区5566日韩| 欧美激情资源网| 国产精品私人影院| 国产欧美日韩综合| 欧美激情一区二区三区全黄| 国产亚洲一本大道中文在线| 久久免费视频色| 国产日韩综合av| 国产精品免费久久| 国产精品国产三级国产专播品爱网| 国产欧美日韩精品a在线观看| 国产亚洲精品bt天堂精选| 国产区在线观看成人精品| 国产精品女同互慰在线看| 国产精品午夜免费| 亚洲精品久久久蜜桃| 亚洲欧美成人一区二区三区| 亚洲伦理在线免费看| 亚洲午夜免费电影| 日韩电影在线一区二区三区| 老司机精品视频在线| 国产精品白丝jk黑袜喷水| 成人黄动漫网站免费app| 色综合色狠狠综合色| 欧美日韩一本到| 久久综合av免费| 综合激情成人伊人| 日韩精品高清不卡| 色婷婷久久一区二区三区麻豆| 91网站最新网址| 欧美日韩精品一区二区在线播放| 91麻豆精品91久久久久同性| 精品美女被调教视频大全网站| 欧美高清在线一区| 一区二区三区不卡在线观看 | 日本一二三不卡| 亚洲永久免费av| 精品亚洲porn| 成人国产免费视频| 777亚洲妇女| 亚洲国产精品精华液2区45| 亚洲成人一区在线| 粉嫩久久99精品久久久久久夜| 91小视频免费看| 欧美精品一区二区三区在线播放| 亚洲欧洲日韩av| 美美哒免费高清在线观看视频一区二区 | 日韩电影在线免费| 懂色av一区二区三区蜜臀| 欧美女孩性生活视频| 亚洲国产精品高清| 麻豆国产欧美一区二区三区| 色网站国产精品| 中文字幕乱码亚洲精品一区| 免费高清在线一区|