Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Matlab How to Set a Variable in Matlab as an Integer Only?

  1. Jan 13, 2017 #1
    Is there a function in Matlab that presets the value of a variable as an integer only? For example I will set the variable 'y' as an integer at the very beginning of the code, and whenever the variable gains a new value it automatically returns an integer value.

    Thank you in advance.
  2. jcsd
  3. Jan 13, 2017 #2


    Staff: Mentor

    There are several functions int16() and int32() are two examples:

    Code (Matlab M):

    a=int32(10)    // sets a = 32-bit integer value of 10
    However, I think a second assignment to variable 'a' can change the datatype:

    Code (Matlab M):

    a=3.1415         // a is now set to a floating point value
    Here's a more complete list of MATLAB functions for datatype specific values:


    I've tested the datatype changing in FREEMAT and know that the variable's datatype can be changed by another assignment so basically I don't think you can restrict it from being changed. FREEMAT is an open source clone of the core MATLAB functionality.


    In contrast, Julia can lock down a variable to a specific datatype and that is the primary reason why it runs significantly faster than MATLAB as it can dispense with datatype checks each time it uses a variable. Julia (julialang.org) is a recent numerical programming language with many similarities to MATLAB but is open source and gaining traction in data sciences world.

    Last edited: Jan 13, 2017
  4. Jan 15, 2017 #3
    Thank you for this. I guess I just have to use those two functions every time the variable is re-assigned.
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted

Similar Discussions: How to Set a Variable in Matlab as an Integer Only?
  1. Integers in matlab (Replies: 1)