The [[ASC (statement)|ASC]] statement allows a '''QB64''' program to change a character at any position of a [[STRING]] variable. {{PageSyntax}} : [[ASC (statement)|ASC]]({{Parameter|stringExpression$}}[, {{Parameter|position%}}]) = {{Parameter|code%}} {{PageDescription}} * The {{Parameter|stringExpression$}} variable's value must have been previously defined and cannot be an empty string (""). * {{Parameter|position%}} is optional. If no position is used, the leftmost character at position 1 is assumed. * {{Parameter|position%}} cannot be zero or greater than the string's [[LEN|length]] or an [[ERROR Codes|Illegal function error]] will occur. * The [[ASCII]] replacement {{Parameter|code%}} value can be any [[INTEGER]] value from 0 to 255. * Some [[ASCII]] control characters will not [[PRINT]] a character or may format the [[SCREEN]]. [[_PRINTSTRING]] can print them graphically. {{PageExamples}} ''Example:'' Demonstrates how to change existing text characters one letter at a time. {{CodeStart}} a$ = "YZC" {{Cl|ASC (statement)|ASC}}(a$) = 65 ' CHR$(65) = "A" {{Cl|ASC (statement)|ASC}}(a$, 2) = 66 ' CHR$(66) = "B" {{Cl|PRINT}} a$ 'ABC {{Cl|ASC (statement)|ASC}}(a$, 2) = 0 ' CHR$(0) = " " {{Cl|PRINT}} a$ {{Cl|ASC (statement)|ASC}}(a$, 2) = {{Cl|ASC}}("S") ' get code value from ASC function {{Cl|PRINT}} a$ {{CodeEnd}} {{OutputStart}} ABC A C ASC {{OutputEnd}} {{PageSeeAlso}} * [[ASC]] {{text|(function)}} * [[MID$ (statement)]] * [[_PRINTSTRING]] * [[INKEY$]], [[ASCII]] {{PageNavigation}}