How to assign values to a struct array with fields?

102 ビュー (過去 30 日間)
SeaMoon Kim
SeaMoon Kim 2017 年 1 月 13 日
コメント済み: madhan ravi 2019 年 6 月 4 日
Is there any way to write down a one-line script for assigning values to a struct array with fields?
x(1).a=1; x(2).a=2;
I'd like to change each value to 10 and 20 respectively. (I mean x(1).a=10, x(2).a=20) [x.a]=[10 20]; <- This causes an error.

採用された回答

Vandana Rajan
Vandana Rajan 2017 年 1 月 16 日
編集済み: madhan ravi 2019 年 6 月 4 日
Hi,
>> x = struct('a',{10,20});
This will create x(1).a = 10 and x(2).a = 20
To modify an already existing structure array,
>> new_val = num2cell([10,20]);
>> [x.a] = new_val{:};
Please see the following link
  2 件のコメント
SeaMoon Kim
SeaMoon Kim 2017 年 1 月 16 日
Thanks for your comment, Vandana. It works perfectrly! But I found that there is no way to assign struct array in one line. :-(
madhan ravi
madhan ravi 2019 年 6 月 4 日
+1

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeStructures についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by