0

在我的函数中,我将创建一个仅包含一个数字的变量。我如何初始化它?我必须将它初始化为 0 值,或者我可以简单地将其初始化为函数var;

4

2 回答 2

2

在 Matlab 中,变量是动态初始化的。内存分配与初始化之间没有 C++ 或 Java 等价物。

例如:

C代码:

 int x; // Allocate memory on the stack for integer.
 x = 5; // Assign the value 5

Matlab代码:

 x = 5;  %# Allocate memory and assign the value 5

不能通过以下方式将其分为两部分:

 x; %# SYNTAX ERROR! x is not defined yet.
 x = 5; 

另外,我不确定您的意思是否var是某种关键字,但如果您认为它是 - 您就错了。

于 2012-09-22T19:59:09.630 回答
1
var = 0;

只需将其设置为数字。无需初始化。Matlab 变量是完全动态的。

你也可以做类似的事情

global myvar; 

这将创建一个等于空列表 [] 的变量

您也可以覆盖变量而不必担心类型。

myvar %equal to []
myvar = 1543 % equal to 1543
myvar = 'a string hello' %Now myvar is a string
myvar = {item1, item2, item3} % now myvar is a cell array containing 3 items. 
于 2012-09-22T17:56:49.187 回答