blob: f17d8cfee4f8adacd61f70e0871a50ac1247c977 [file]
<?xml version="1.0" encoding="UTF-8"?>
<!--***********************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
***********************************************************-->
<helpdocument version="1.0">
<meta>
<topic id="textsbasicshared03090412xml" indexer="include" status="PUBLISH">
<title id="tit" xml-lang="en-US">Exit Statement [Runtime]</title>
<filename>/text/sbasic/shared/03090412.xhp</filename>
</topic>
</meta>
<body>
<section id="exit">
<bookmark xml-lang="en-US" branch="index" id="bm_id3152924">
<bookmark_value>Exit statement</bookmark_value>
</bookmark>
<paragraph role="heading" id="hd_id3152924" xml-lang="en-US" level="1" l10n="U"><link href="text/sbasic/shared/03090412.xhp" name="Exit Statement [Runtime]">Exit Statement [Runtime]</link></paragraph>
<paragraph role="paragraph" id="par_id3153394" xml-lang="en-US" l10n="U">Exits a <emph>Do...Loop</emph>, <emph>For...Next</emph>, a function, or a subroutine.</paragraph>
</section>
<paragraph role="heading" id="hd_id3149763" xml-lang="en-US" level="2" l10n="U">Syntax:</paragraph>
<paragraph role="paragraph" id="par_id3159157" xml-lang="en-US" l10n="U">see Parameters</paragraph>
<paragraph role="heading" id="hd_id3148943" xml-lang="en-US" level="2" l10n="U">Parameters:</paragraph>
<paragraph role="paragraph" id="par_id3154760" xml-lang="en-US" l10n="U"><emph>Exit Do</emph></paragraph>
<paragraph role="paragraph" id="par_id3147559" xml-lang="en-US" l10n="U">Only valid within a <emph>Do...Loop</emph> statement to exit the loop. Program execution continues with the statement that follows the Loop statement. If <emph>Do...Loop</emph> statements are nested, the control is transferred to the loop in the next higher level.</paragraph>
<paragraph role="paragraph" id="par_id3150398" xml-lang="en-US" l10n="U"><emph>Exit For</emph></paragraph>
<paragraph role="paragraph" id="par_id3148797" xml-lang="en-US" l10n="U">Only valid within a <emph>For...Next</emph> loop to exit the loop. Program execution continues with the first statement that follows the <emph>Next</emph> statement. In nested statements, the control is transferred to the loop in the next higher level.</paragraph>
<paragraph role="paragraph" id="par_id3147229" xml-lang="en-US" l10n="U"><emph>Exit Function</emph></paragraph>
<paragraph role="paragraph" id="par_id3154685" xml-lang="en-US" l10n="U">Exits the <emph>Function</emph> procedure immediately. Program execution continues with the statement that follows the <emph>Function</emph> call.</paragraph>
<paragraph role="paragraph" id="par_id3155132" xml-lang="en-US" l10n="U"><emph>Exit Sub</emph></paragraph>
<paragraph role="paragraph" id="par_id3149561" xml-lang="en-US" l10n="U">Exits the subroutine immediately. Program execution continues with the statement that follows the <emph>Sub</emph> call.</paragraph>
<paragraph role="note" id="par_id3153143" xml-lang="en-US" l10n="U">The Exit statement does not define the end of a structure, and must not be confused with the End statement.</paragraph>
<paragraph role="heading" id="hd_id3147348" xml-lang="en-US" level="2" l10n="U">Example:</paragraph>
<paragraph role="paragraph" id="par_id3151113" xml-lang="en-US" l10n="U">Sub ExampleExit</paragraph>
<paragraph role="paragraph" id="par_id3156283" xml-lang="en-US" l10n="U">Dim sReturn As String</paragraph>
<paragraph role="paragraph" id="par_id3147125" xml-lang="en-US" l10n="U">Dim sListArray(10) as String</paragraph>
<paragraph role="paragraph" id="par_id3151073" xml-lang="en-US" l10n="U">Dim siStep as Single</paragraph>
<paragraph role="paragraph" id="par_id3153158" xml-lang="en-US" l10n="U">For siStep = 0 to 10 REM Fill array with test data</paragraph>
<paragraph role="paragraph" id="par_id3148457" xml-lang="en-US" l10n="U">sListArray(siStep) = chr(siStep + 65)</paragraph>
<paragraph role="paragraph" id="par_id3154492" xml-lang="en-US" l10n="U">msgbox sListArray(siStep)</paragraph>
<paragraph role="paragraph" id="par_id3154791" xml-lang="en-US" l10n="U">next siStep</paragraph>
<paragraph role="paragraph" id="par_id3153510" xml-lang="en-US" l10n="U">sReturn = LinSearch(sListArray(), "B")</paragraph>
<paragraph role="paragraph" id="par_id3154513" xml-lang="en-US" l10n="U">Print sReturn</paragraph>
<paragraph role="paragraph" id="par_id3149121" xml-lang="en-US" l10n="U">end sub</paragraph>
<paragraph role="paragraph" id="par_id3152962" xml-lang="en-US" l10n="U">Function LinSearch( sList(), sItem As String ) as integer</paragraph>
<paragraph role="paragraph" id="par_id3154755" xml-lang="en-US" l10n="U">dim iCount as Integer</paragraph>
<paragraph role="paragraph" id="par_id3153764" xml-lang="en-US" l10n="U">REM LinSearch searches a TextArray:sList() for a TextEntry:</paragraph>
<paragraph role="paragraph" id="par_id3148995" xml-lang="en-US" l10n="U">REM Returns the index of the entry or 0 ( Null)</paragraph>
<paragraph role="paragraph" id="par_id3156057" xml-lang="en-US" l10n="U">for iCount=1 to Ubound( sList() )</paragraph>
<paragraph role="paragraph" id="par_id3159266" xml-lang="en-US" l10n="U">if sList( iCount ) = sItem then</paragraph>
<paragraph role="paragraph" id="par_id3149567" xml-lang="en-US" l10n="U">Exit for REM sItem found</paragraph>
<paragraph role="paragraph" id="par_id3147343" xml-lang="en-US" l10n="U">end if</paragraph>
<paragraph role="paragraph" id="par_id3155174" xml-lang="en-US" l10n="U">next iCount</paragraph>
<paragraph role="paragraph" id="par_id3146313" xml-lang="en-US" l10n="U">if iCount = Ubound( sList() ) then iCount = 0</paragraph>
<paragraph role="paragraph" id="par_id3166448" xml-lang="en-US" l10n="U">LinSearch = iCount</paragraph>
<paragraph role="paragraph" id="par_id3146916" xml-lang="en-US" l10n="U">end function</paragraph>
</body>
</helpdocument>