Bird
Raised Fist0
MATLABdata~5 mins

Character arrays and strings in MATLAB

Choose your learning style10 modes available
Introduction

Character arrays and strings let you work with text in MATLAB. You can store, change, and display words or sentences.

You want to store a name or label in your program.
You need to join or split sentences.
You want to compare two pieces of text.
You want to display messages to the user.
You need to read or write text data from files.
Syntax
MATLAB
%% Character array syntax
charArray = ['H', 'e', 'l', 'l', 'o'];

%% String syntax
str = "Hello";

Character arrays use single quotes and are arrays of characters.

Strings use double quotes and are easier to work with for text operations.

Examples
This creates a character array and displays: MATLAB
MATLAB
charArray = ['M', 'A', 'T', 'L', 'A', 'B'];
disp(charArray);
This creates a string and displays: MATLAB
MATLAB
str = "MATLAB";
disp(str);
Shows empty character array and empty string.
MATLAB
emptyCharArray = [''];
disp(emptyCharArray);

emptyString = "";
disp(emptyString);
String with a newline character to show multiple lines.
MATLAB
multiLineString = "Line1\nLine2";
disp(multiLineString);
Sample Program

This program shows how to create and change character arrays and strings, then prints them.

MATLAB
% Create character array and string
charArray = ['H', 'e', 'l', 'l', 'o'];
str = "Hello";

% Display both
fprintf('Character array: %s\n', charArray);
fprintf('String: %s\n', str);

% Change a character in the character array
charArray(1) = 'J';
fprintf('Modified character array: %s\n', charArray);

% Change the string
str = "Jello";
fprintf('Modified string: %s\n', str);
OutputSuccess
Important Notes

Character arrays are older style; strings are newer and easier for text work.

Changing characters in strings requires creating a new string, unlike character arrays.

Use strings for most text tasks unless you need character-level control.

Summary

Character arrays use single quotes and are arrays of characters.

Strings use double quotes and are easier to work with for text.

You can create, display, and modify both in MATLAB.

Practice

(1/5)
1. Which of the following correctly creates a character array in MATLAB?
easy
A. name = [Hello];
B. name = "Hello";
C. name = 'Hello';
D. name = (Hello);

Solution

  1. Step 1: Understand character array syntax

    Character arrays in MATLAB use single quotes to enclose text.
  2. Step 2: Check each option

    name = 'Hello'; uses single quotes correctly. name = "Hello"; uses double quotes which create string objects, not character arrays. Options A and D are invalid syntax.
  3. Final Answer:

    name = 'Hello'; -> Option C
  4. Quick Check:

    Single quotes create character arrays [OK]
Hint: Use single quotes for character arrays, double for strings [OK]
Common Mistakes:
  • Using double quotes for character arrays
  • Missing quotes around text
  • Using brackets or parentheses incorrectly
2. Which of the following is the correct way to create a string in MATLAB?
easy
A. str = "MATLAB";
B. str = 'MATLAB';
C. str = {"MATLAB"};
D. str = ("MATLAB");

Solution

  1. Step 1: Recall string creation syntax

    Strings in MATLAB are created using double quotes.
  2. Step 2: Evaluate options

    str = "MATLAB"; uses double quotes correctly. str = 'MATLAB'; creates a character array, not a string. Options C and D use invalid or different data types.
  3. Final Answer:

    str = "MATLAB"; -> Option A
  4. Quick Check:

    Double quotes create strings [OK]
Hint: Double quotes create strings, single quotes create char arrays [OK]
Common Mistakes:
  • Confusing single and double quotes
  • Using curly braces which create cell arrays
  • Using parentheses incorrectly
3. What is the output of the following MATLAB code?
charArray = 'abc';
str = "def";
disp([charArray str])
medium
A. abcdef
B. [abc def]
C. Error: Cannot concatenate char array and string
D. abc def

Solution

  1. Step 1: Understand concatenation of char arrays and strings

    In MATLAB, concatenating a character array and a string with [] converts the string to a char array and joins them.
  2. Step 2: Evaluate the concatenation result

    Concatenating 'abc' and "def" results in 'abcdef' as a character array, displayed without spaces.
  3. Final Answer:

    abcdef -> Option A
  4. Quick Check:

    Concatenation joins text without spaces [OK]
Hint: Concatenate char arrays and strings with [] to join text [OK]
Common Mistakes:
  • Expecting spaces between concatenated strings
  • Thinking concatenation causes error
  • Confusing display output with variable type
4. Identify the error in the following MATLAB code:
str1 = 'Hello';
str2 = "World";
result = strcat(str1, str2);
medium
A. strcat cannot concatenate character arrays and strings
B. No error, code runs correctly
C. Missing semicolon after str2 assignment
D. str1 and str2 must both be strings or both char arrays

Solution

  1. Step 1: Understand strcat behavior

    strcat can concatenate character arrays and strings by automatically converting strings to character arrays.
  2. Step 2: Verify the code

    str1 is a character array, str2 is a string, but strcat(str1, str2) returns 'HelloWorld' as a character array. No error occurs.
  3. Final Answer:

    No error, code runs correctly -> Option B
  4. Quick Check:

    strcat handles mixed types [OK]
Hint: strcat automatically handles char and string inputs [OK]
Common Mistakes:
  • Assuming strcat requires matching types
  • Confusing with + operator which doesn't work for mixed types
  • Looking for syntax errors where none exist
5. You have a character array chars = 'MATLAB' and want to convert it to a string and append " is fun". Which code correctly does this?
hard
A. newStr = chars + " is fun";
B. newStr = chars + ' is fun';
C. newStr = strcat(chars, " is fun");
D. newStr = string(chars) + " is fun";

Solution

  1. Step 1: Convert character array to string

    Use string(chars) to convert the character array to a string type.
  2. Step 2: Append text using + operator

    Strings can be concatenated with + and another string, so adding " is fun" works.
  3. Step 3: Check other options

    newStr = chars + ' is fun'; tries to add char array and char array with + which is invalid. newStr = strcat(chars, " is fun"); mixes types but produces a character array, not a string. newStr = chars + " is fun"; adds char array and string with + which errors.
  4. Final Answer:

    newStr = string(chars) + " is fun"; -> Option D
  5. Quick Check:

    Convert char to string, then use + to join [OK]
Hint: Convert char array to string first, then use + to append [OK]
Common Mistakes:
  • Using + to add char arrays
  • Mixing char arrays and strings in strcat
  • Not converting char array before concatenation
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard