Is there a way to start indexing with 0 in MATLAB?
33 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
a=[4 2 5 2]
can I make this happen?
a(0)=4
0 Commenti
Risposta accettata
madhan ravi
il 2 Gen 2019
Nope not at all index of matlab starts from 1 always!
10 Commenti
Bruno Luong
il 3 Lug 2023
You confuse between uint8 arithmetics (that can never return anything beyond (0:255))
and indexing range.
Rohit
il 5 Lug 2023
@Stephen23 @Bruno Luong Thank you for your inputs. I was under the assumption that typecasting the index would change the the data type of the output which is not the case.
Più risposte (2)
Bruno Luong
il 2 Gen 2019
Modificato: Bruno Luong
il 2 Gen 2019
Yes, but you won't get much support by built-in array stock function
>> M = containers.Map('KeyType','uint32','ValueType','double')
M =
Map with properties:
Count: 0
KeyType: uint32
ValueType: double
>> M(0)=3
M =
Map with properties:
Count: 1
KeyType: uint32
ValueType: double
>> M(0)
ans =
3
>>
6 Commenti
Utku Yilmaz
il 19 Apr 2020
Modificato: Utku Yilmaz
il 19 Apr 2020
ZeroBased function (link given above) is very useful. 1 based indexing creates problem when I share my code with software developers using C language. The indexes get messy and it becomes very hard to compare codes.
I always used index values starting from 0, as following. But I think, I will utilize ZeroBased function from now on.
for index_A = 0 : 10
for index_B = 0 : 10
value = a_matrix(index_A+1, index_B+1);
end
end
Bruno Luong
il 3 Lug 2023
One way is to define your onw class with overloading subsref and subsasg
0 Commenti
Vedere anche
Categorie
Scopri di più su Matrix Indexing 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!