how to create empty string arrays and then populate them through arrayName(indexNumber) syntax
204 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
The following works for numbers:
B=[];
B(1)=10;
but how to make it work for strings such as
C=[''];
C(1)='hello';% does NOT work
0 commentaires
Réponses (3)
Ronald Whiddon
le 10 Mai 2019
Declare an empty string array in this manner:
C=string.empty;
C(1)='hello';
C(2) = 'goodbye';
0 commentaires
Dishant Arora
le 20 Fév 2014
c{1} = 'hello';
2 commentaires
Ronald Whiddon
le 10 Mai 2019
This is a workaround, but it actually creates a cell array of strings.
Stephen23
le 10 Mai 2019
Modifié(e) : Stephen23
le 10 Mai 2019
"This is a workaround, but it actually creates a cell array of strings. "
At the time this question was posed (and answered) the string class did not exist (it was only introduced in R2016b). Each element of a character array stores only one character, so (until the string class was introduced) the only way to store multiple characters using a scalar index (as the question poses) is to use a cell array. From that persepctive it is not a "workaround", it is the correct solution for versions of MATLAB before R2016b.
Nigel Nettheim
le 9 Juin 2023
You can initialise an empty string array with:
s = strings(0)
to which the response is:
s =
0×0 empty string array
0 commentaires
Voir également
Catégories
En savoir plus sur Characters and Strings dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!