MATLAB: A way to use an empty char cell in inputdlg

cellMATLABstrings

Hi, and Merry Christmas at all
I need to use an inputdlg box with La Tex interpreter setted at
options.Interpreter = 'tex';
my prompts return from a for loop; so I used sprintf function:
for i=1:3
w = sprintf('\\alpha\ %d', i);
e = sprintf('A %d', i);
r = sprintf('\\theta\ %d', i);
q = sprintf('D %d', i);
z = sprintf('\\sigma\ %d (rot=0, prism=1)', i);
Title = sprintf('LINK %d',i);
prompt = {w,e,r,q,z};
numlines=1;
answer=inputdlg(prompt,Title,numlines,defans, options);
but, since I don't care default answer, I thought to assign it an empty space like:
defans = {'','','','',''};
or
defans = cell(1,5);
defans{1} = char(defans{1});
defans{2} = char(defans{1});
defans{3} = char(defans{1});
defans{4} = char(defans{1});
defans{5} = char(defans{1});
but in both cases matlab returns the same warning message:
Warning: Escape sequence ' ' is not valid. See 'help sprintf' for valid escape
sequences.
I think because '' form is an Escape sequence for sprintf() function.
How can I use the LaTex interpreter and an empty space as default answer without Warning Message returning ?

Best Answer

You need the string e.g. '\alpha 3'. You can create this by:
str = ['\alpha ', sprintf('%d', 3)]
or
str = sprintf('\\alpha %d', 3)
The backslash is the special character, which tells LaTeX that a command is following. The space is no valid format, such that '\ ' creates the shown error message.
The Backslash is a special character for sprintf also, e.g. '\n' means a line break. Therefore you have to escape it by another backslash, to get one backslash in the created string.
If this solves your problem, the question could be simplified:
How can I create a string, which is displayed by the LaTeX interpreter as "\alpha 3", where \alpha means the Greek character and the number is taken from a variable?