Code: Select all
Procedure test()
ProcedureReturn 1
EndProcedure
If test(): a=getp(): Debug a: EndIf ; getp()=recall the result from ProcedureReturn
Code: Select all
Procedure test()
ProcedureReturn 1
EndProcedure
If test(): a=getp(): Debug a: EndIf ; getp()=recall the result from ProcedureReturn
Code: Select all
Procedure test()
ProcedureReturn 1
EndProcedure
a=test()
If a: Debug a: EndIf
Code: Select all
EnableExplicit
Structure ProcedureStatus
string.s
integer.i
error.i
extended.i
EndStructure
Global g_ProcedureStatus.ProcedureStatus
Procedure.s ReplaceStringAndCount(String$, s = 1, o = 0)
Protected Count
; reset variable values before use
g_ProcedureStatus\error = 0
g_ProcedureStatus\extended = 0
g_ProcedureStatus\integer = 0
g_ProcedureStatus\string = ""
; perform any actions
Count = CountString(String$, " ")
String$ = ReplaceString(String$ , " " , "_" , #PB_String_CaseSensitive, s, o)
; save the results of the function in the form of statistics, which are declared in the function description
If Count = 0
g_ProcedureStatus\error = 1
EndIf
g_ProcedureStatus\extended = Count
g_ProcedureStatus\string = String$
ProcedureReturn String$
EndProcedure
; After performing the replacement operation, obtain the number of replacements, the error status and,
; taking this into account, take any actions, for example, recognize the operation as unsuccessful
Debug ReplaceStringAndCount("go go go")
Debug g_ProcedureStatus\extended
Debug g_ProcedureStatus\error
Code: Select all
Procedure test(*R.INTEGER)
*R\i = 1
ProcedureReturn 1
EndProcedure
If test(@a)
Debug a
EndIf
Code: Select all
Procedure test()
ProcedureReturn 1
EndProcedure
If a := test()
Debug a
EndIf