15-4 �ϰ��ܼƻP�����ܼ�

¨C¤@­Ó¨ç¦¡¦b¹Bºâ®É¡A§¡¦û¥Î­Ó§Oªº¤@¶ô°O¾ÐÅé¡A¦¹¤u§@ªÅ¶¡©M MATLAB ªº°ò¥»¤u§@ªÅ¶¡©Î¬O¨ä¥L¨ç¦¡ªº¤u§@ªÅ¶¡¬O¤¬¬Û¿W¥ßªº¡A¦]¦¹¤£¦PªÅ¶¡ªºÅܼƬO§¹¥þ¿W¥ß¡A¤£·|¬Û¤¬¼vÅT¡C³o¨Ç¦b¤£¦P¤u§@ªÅ¶¡ªºÅܼơAºÙ¬°¡u°Ï°ìÅܼơv¡]Local Variables¡^¡C¤@¯ë¦Ó¨¥¡A¨Ï¥Î°Ï°ìÅܼƤw¯àº¡¨¬¤@¯ëµ{¦¡³]­pªº»Ý¨D¡A¦ý¦³®É­Ô¬°¤F´î¤ÖÅܼƪº¶Ç»¼¡A§Ú­Ì¥i¥Î¡u¥þ°ìÅܼơv¡]Global Variables¡^¡A¦b¨Ï¥Î¥þ°ìÅܼƤ§«e¡A§Ú­Ì¥²»Ý¥ý¶i¦æÅܼƫŧi¡A¨ä®æ¦¡¦p¤U¡G

global variable1 variable2 ...
¨Ò¦p¡G§Ú­Ì¦b¨ç¦¡ func6.m «Å§i¤F¤@­Ó¥þ°ìÅÜ¼Æ X¡A¨Ã¦L¥X¨ä­È¡AFunc6.m ªº¤º®e¦p¤U¡G >> type func6.m function func6 global X % ¥þ°ìÅܼƫŧi X = X + 2; fprintf('The value of X in "func6" is %g.\n', X);

¦¹¨ç¦¡¨S¦³¿é¥X©M¿é¤J¡A¥L¥u¬O«Å§i¥þ°ìÅÜ¼Æ X¡A±N X ªº­È¥[ 2¡A¨Ã¦L¥X¨ä­È¡C±ý´ú¸Õ¦¹¨ç¦¡¡A¥i¿é¤J¦p¤U¡G

>> global X % ¦b°ò¥»¤u§@ªÅ¶¡¶i¦æ¥þ°ìÅÜ¼Æ x ªº«Å§i >> X = 2; >> fprintf('The value of X in the base workspace is %g.\n', X); The value of X in the base workspace is 2. >> func6; The value of X in "func6" is 4. >> fprintf('The value of X in the base workspace is %g.\n', X); The value of X in the base workspace is 4.

¥Ñ¦¹¥iª¾¡A¤@¥¹ X ³Q«Å§i¬°¥þ°ìÅܼƫá¡A´N¥i¥H¦b¤£¦PªºªÅ¶¡¤¤¡A¦s¨ú©Î§ïÅܦP¤@­Ó¥þ°ìÅÜ¼Æ X ªº­È¡C

¥²»Ýª`·Nªº¬O¡G½ÐºÉ¶q¤Ö¥Î¥þ°ìÅܼơI¥þ°ìÅܼƷ|¨Ïµ{¦¡ªº¬yµ{¸û¤£³z©ú¡A³y¦¨µ{¦¡°£¿ù©ÎºûÅ@ªº§xÃø¡C­Y±z¤@©w­n¥Î¥þ°ìÅܼơA½Ð¿í´`¤U¦C¨â­ì«h¡G

¥t¥~¡A¦bÀ˵ø¤u§@ªÅ¶¡ªºÅܼƮɡA»Ý¿é¤J whos global¡A¤~¯àÅã¥Ü¥þ°ìÅܼơA¨Ò¦p¡G

>> whos global Name Size Bytes Class X 1x1 8 double array (global) Grand total is 1 elements using 8 bytes

¦b²M°£ÅܼƮɡAclear X ¥u·|²M°£¦b¥Ø«e¤u§@ªÅ¶¡ªº¥þ°ìÅÜ¼Æ X¡A­Y­n²M°£©Ò¦³¤u§@ªÅ¶¡ªº¥þ°ìÅÜ¼Æ X¡A«h¥²»Ý¨Ï¥Î clear global X¡C


MATLABµ{¦¡³]­p¡G¤Jªù½g