良好的注释使程序可读性更强,本文将介绍GAMS环境下几种常用注释命令
- 单行注释及注释符更换
- 多行注释
- 行中注释及注释符更换
- 行末注释及注释符更换
- 隐藏注释
- …
程序(语法及示例)
$Title GAMS实用注释符语法
*-------------------------------------------------------------------------------
* 1.单行注释符:*+注释内容
* 示例:
Scalar X /99/;
* This is commented code.
* X=X+1;
Display X;
* Tips: 更换单行注释符
* $Comment + 新的单行注释符
* 示例
$Comment %
% Using a new comment character!
% 还原默认的单行注释符
$Comment *
* 注意点:
* 单行注释符必须出现在程序行的第一列字符的位置才有效;
* 相应的出现在第一列且是定义的注释符的符号将被认定为注释符号,
* 而不是运算符或其他的符号(这一点在使用类似'*'符号作为单行注释符时要注意,
* 因为其在程序行第一列字符位置时会被认为是注释符而不是乘号)
*-------------------------------------------------------------------------------
* 2.多行注释符: $Ontext 与$Offtext 命令对之间包含的多行代码会被注释
* 示例
$Ontext
多行注释
多行注释
多行注释
多行注释
X=X+10000;
$Offtext
Display X;
*-------------------------------------------------------------------------------
* 3. 行内注释符:/* 行内的注释内容 */
* 使用行内注释前一定要开启行内注释功能:$Oninline
$Oninline
X=X /* 这是一个行内注释 */ +1;
Display X;
* Tips:替换行内注释符
* $Inlinecom ss ee ss代表更换的开始符 ee更换的终止符
* 示例
$Inlinecom ST ED
X=X ST 这是替换的行内注释符内的注释 ED -1;
Display X;
*-------------------------------------------------------------------------------
* 4. 行末注释:!!+注释内容
* 使用行末注释前一定要开启行末注释功能:$Oneolcom
$Oneolcom
X=X+1; !! 这是行末注释
Display X;
* Tips:替换行末注释符
* $eolcom xx xx代表更换的行末注释符
* 示例
$Eolcom //
X=X+900 // 这是新的行末注释符
Display X;
*-------------------------------------------------------------------------------
* 5. 隐藏注释:$hidden + 注释内容,用于不想再LST文件中显示此注释内容的情况
* 示例
$hidden 这句注释将会被隐藏
$Ontext
建议:
一般工程中尽量只使用多行注释和单行注释且不要更改其默认注释识别符,以免引起不必要的麻烦。
需要进行行末注释和行内注释的情况多是在说明复杂或关键部分,以加强代码的可读性。
总之,程序注释的目的是为了增强代码的可读性,要考虑到普遍遵守的习惯和兼容性。
$Offtext
运行输出
3 *-------------------------------------------------------------------------
------
4 * 1.单行注释符:*+注释内容
5 * 示例:
6 Scalar X /99/;
7 * This is commented code.
8 * X=X+1;
9 Display X;
10
11 * Tips: 更换单行注释符
12 * $Comment + 新的单行注释符
13 * 示例
15 % Using a new comment character!
16 % 还原默认的单行注释符
18 * 注意点:
19 * 单行注释符必须出现在程序行的第一列字符的位置才有效;
20 * 相应的出现在第一列且是定义的注释符的符号将被认定为注释符号,
21 * 而不是运算符或其他的符号(这一点在使用类似'*'符号作为单行注释符时要注意?
?
22 * 因为其在程序行第一列字符位置时会被认为是注释符而不是乘号)
23
24 *-------------------------------------------------------------------------
------
25 * 2.多行注释符: $Ontext 与$Offtext 命令对之间包含的多行代码会被注释
26 * 示例
多行注释
多行注释
多行注释
多行注释
X=X+10000;
34 Display X;
35
36 *-------------------------------------------------------------------------
------
37 * 3. 行内注释符:/* 行内的注释内容 */
38 * 使用行内注释前一定要开启行内注释功能:$Oninline
40 X=X /* 这是一个行内注释 */ +1;
41 Display X;
42
43 * Tips:替换行内注释符
44 * $Inlinecom ss ee ss代表更换的开始符 ee更换的终止符
45 * 示例
47 X=X ST 这是替换的行内注释符内的注释 ED -1;
48 Display X;
49
50 *-------------------------------------------------------------------------
------
51 * 4. 行末注释:!!+注释内容
52 * 使用行末注释前一定要开启行末注释功能:$Oneolcom
54 X=X+1; !! 这是行末注释
55 Display X;
56
57 * Tips:替换行末注释符
58 * $eolcom xx xx代表更换的行末注释符
59 * 示例
61 X=X+900 // 这是新的行末注释符
62 Display X;
63
64 *-------------------------------------------------------------------------
------
65 * 5. 隐藏注释:$hidden + 注释内容,用于不想再LST文件中显示此注释内容的情况
66 * 示例
68
建议:
一般工程中尽量只使用多行注释和单行注释且不要更改其默认注释识别符,以免引起
不必要的麻烦。
需要进行行末注释和行内注释的情况多是在说明复杂或关键部分,以加强代码的可读
性。
总之,程序注释的目的是为了增强代码的可读性,要考虑到普遍遵守的习惯和兼容性
。
75
76
77
COMPILATION TIME = 0.000 SECONDS
E x e c u t i o n
---- 9 PARAMETER X = 99.000
---- 34 PARAMETER X = 99.000
---- 41 PARAMETER X = 100.000
---- 48 PARAMETER X = 99.000
---- 55 PARAMETER X = 100.000
---- 62 PARAMETER X = 1000.000
EXECUTION TIME = 0.000 SECONDS
以上就是GAMS环境中注释符的一些实用方法及应用。