size
    5 views (last 30 days)
  
       Show older comments
    
VAR_START =
     9    12    14    17    24    31    34    37    40    43    46    49    52    55    58    61    64
>> NVAR = size(VAR_START)
NVAR =
     1    17
What is the function of 'size' here???? why is it giving 1 17...???? I am srry bt i cannot understand!!!
1 Comment
  Oleg Komarov
      
      
 on 31 May 2012
				For future reference whenver you don't know wha rt a function does, doc size, or use F1
Accepted Answer
  Image Analyst
      
      
 on 31 May 2012
        That's just the way size works. It's kind of like they expect size() to be used with arrays that are 2 dimensions or more. Get used to it. It says your "array" is 1 row by 17 columns. If you want just the "17" and not the "1" and you know in advance that you have a 1 dimensional array, then use length() function instead of the size() function. The length() function will give you 17 - a single number - without it being a 2 element result with the unhelpful "1" as the first element. length() gives you the length of the longest dimension, which is kind of confusing, so I use length() for 1D arrays (and only for 1D arrays), and size() for 2D or higher dimensional arrays.
0 Comments
More Answers (1)
  Honglei Chen
    
      
 on 31 May 2012
        Because VAR_START is a 1x17 vector, i.e., number of rows is 1 and number of columns is 17
0 Comments
See Also
Categories
				Find more on Creating and Concatenating Matrices in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


