"randi(100)" Outputting Characters Instead of Integers

1 visualizzazione (ultimi 30 giorni)
In line 2 below, "randi(100)" is returning characters, including black spaces, instead of integers. What code is converting "randi(100)" to return characters above line XXX, and how can I change this code to return integers?
dstr=num2str(d);
name=strcat('d',dstr,'_',randi(100));
  4 Commenti
per isakson
per isakson il 18 Ott 2015
IMO: it's better to use sprintf
>> name = sprintf( 'd%s_%d', dstr, randi(100) )
name =
dhello_91
balsip
balsip il 18 Ott 2015
That would work, too! Thanks again.

Accedi per commentare.

Risposta accettata

the cyclist
the cyclist il 18 Ott 2015
Modificato: the cyclist il 18 Ott 2015
I think you might want
name=strcat('d',dstr,'_',num2str(randi(100)));
This will convert the number to its string equivalent, rather than the ASCII value corresponding to that value (which is what I assume is happening now).
  1 Commento
balsip
balsip il 18 Ott 2015
Thanks for the quick reply, Cyclist. That did the trick. Very green here, so it's much appreciated.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Data Type Conversion in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by