Skip to main content

Tipo di dati: STRING

Importante

Nel caso della codifica Latin-1, la memoria richiesta per a STRING variabile è sempre 1 byte per carattere più un byte aggiuntivo. Ad esempio, ciò si traduce in 81 byte nel caso di uno standard STRING(80) dichiarazione.

Nel caso della codifica UTF-8, un carattere può essere lungo fino a 4 byte. Tuttavia, la lunghezza della stringa indica sempre il numero di byte che sono riservati alla STRINGA. Pertanto, non esiste più una relazione 1:1 tra il conteggio dei caratteri e la lunghezza della stringa.

Il STRING il tipo di dati viene interpretato come Latin-1 o UTF-8: Se il Codifica UTF-8 per STRING l'opzione di compilazione è abilitata, quindi tutte le stringhe letterali vengono interpretate in formato UTF-8.

Dichiarazione:

<variable name> : STRING( <size> ) := ' <text> ';

<variable name> : STRING[ <size> ] := ' <text> ';

Il <size> la dimensione della memoria e l'inizializzazione sono opzionali.

Esempio 207. Esempio
sVar : STRING(46):= 'This is a string with memory for 46 characters.';
sVar_µ : STRING[10] := 'µ (Mü)';
sVar_ß : STRING[10] := 'Eszett';


Una variabile di tipo di dati STRING può contenere qualsiasi stringa. La quantità di <size> la memoria riservata durante una dichiarazione si riferisce al numero di byte ed è indicata tra parentesi o parentesi quadre. Se una dimensione non è definita, per impostazione predefinita vengono riservati 80 caratteri. Se una variabile viene inizializzata con un valore letterale troppo lungo per il tipo di dati, il valore letterale viene troncato di conseguenza da destra.

Tuttavia, la lunghezza delle stringhe non è fondamentalmente limitata. Se esegui manipolazioni di stringhe con le funzioni della libreria Standard eseguite, le stringhe fino a una lunghezza di 255 vengono elaborate correttamente. Se esegui manipolazioni di stringhe con le funzioni della libreria StringUtils run, puoi anche usare stringhe più lunghe (>255 caratteri).

Quando una variabile del tipo di dati STRING viene reinizializzato reimpostando l'applicazione, il contenuto della (vecchia) stringa, che esiste dopo il carattere null di terminazione del valore iniziale, non viene sovrascritto. Ciò vale sia per l'inizializzazione con il valore di inizializzazione sia per l'inizializzazione con il valore di inizializzazione predefinito 0.

Nella versione del compilatore 3.5.18.0 e successive, è possibile selezionare il formato di codifica delle stringhe. Hai la possibilità di specificare a livello di progetto se le stringhe vengono interpretate in formato Latin-1 o in formato UTF-8. Per la codifica UTF-8, abilitare il Codifica UTF8 per STRING opzione di compilazione.

Per ulteriori informazioni, vedere: Opzioni di compilazione e Codifica UTF-8

Suggerimento

Prima di modificare il formato di codifica, è consigliabile verificare il codice con la regola di analisi statica SA0175.

Per ulteriori informazioni, vedere: Luce di analisi statica

Suggerimento

Aggiungi il {attribute 'monitoring_encoding' := 'UTF8'} pragma alla dichiarazione di una variabile. Quindi puoi monitorare il contenuto della variabile nella codifica UTF8.

Per ulteriori informazioni, vedere: monitoring_encoding pragma