{"id":217921,"date":"2014-04-02T10:01:02","date_gmt":"2014-04-02T06:01:02","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=217921"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=217921","title":{"rendered":"<span class=\"post_title\">\u0417\u0430\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0430\u0440\u0445\u0435\u043e\u043b\u043e\u0433\u0438\u044f. \u0418\u043b\u0438 PVS-Studio \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442 Microsoft Word 1.1a<\/span>"},"content":{"rendered":"<div class=\"content html_format\">   \t<img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/ac6\/d5d\/872\/ac6d5d87220b61d9c01d0bb05aff7a43.png\" alt=\"\u0427\u0435\u0440\u0435\u043f \u0435\u0434\u0438\u043d\u043e\u0440\u043e\u0433\u0430\" align=\"left\"\/><br \/>  \u041d\u0435\u0434\u0430\u0432\u043d\u043e \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Microsoft \u0441\u0434\u0435\u043b\u0430\u043b\u0430 \u043f\u043e\u0434\u0430\u0440\u043e\u043a \u0432\u0441\u0435\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u043e\u0442\u044f\u0442 \u043f\u043e\u043a\u043e\u043f\u0430\u0442\u044c\u0441\u044f \u0432 \u0447\u0435\u043c-\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u043c. Microsoft \u043e\u0442\u043a\u0440\u044b\u043b\u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 MS-DOS v 1.1, v 2.0 \u0438 Word for Windows 1.1a. \u041e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 MS-DOS \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u043d\u0430 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0435, \u0438 \u043a \u043d\u0435\u0439 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440 \u043d\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u043c. \u0410 \u0432\u043e\u0442 Word \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0421\u0438. \u0418\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u0430\u043c Word 1.1a \u043f\u043e\u0447\u0442\u0438 25 \u043b\u0435\u0442, \u043e\u0434\u043d\u0430\u043a\u043e \u043d\u0430\u043c \u043a\u043e\u0435-\u043a\u0430\u043a \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0438\u0445 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c. \u041a\u043e\u043d\u0435\u0447\u043d\u043e \u043d\u0438\u043a\u0430\u043a\u043e\u0439 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0446\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0432 \u044d\u0442\u043e\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0435 \u043d\u0435\u0442. Just for fun.<br \/>  <a name=\"habracut\"><\/a>  <\/p>\n<h2>\u0413\u0434\u0435 \u043f\u043e\u0436\u0438\u0432\u0438\u0442\u044c\u0441\u044f \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438<\/h2>\n<p>  \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043c\u043d\u043e\u0433\u0438\u043c \u0431\u0443\u0434\u0435\u0442 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0430 \u043d\u0435 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f, \u0430 \u0441\u0430\u043c \u0444\u0430\u043a\u0442, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u043a\u043e\u0434\u044b MS-DOS v 1.1, v 2.0 \u0438 Word for Windows 1.1a. \u0422\u0435\u043c, \u043a\u043e\u043c\u0443 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u0441\u0430\u043c\u0438\u043c \u043f\u043e\u043a\u043e\u043f\u0430\u0442\u044c\u0441\u044f \u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u043a\u043e\u0434\u0430\u0445, \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u044e \u043a \u043f\u0435\u0440\u0432\u043e\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0443. <\/p>\n<p>  \u041f\u0440\u0435\u0441\u0441-\u0440\u0435\u043b\u0438\u0437: <a href=\"http:\/\/www.viva64.com\/go.php?url=1371\">Computer History Museum Makes Historic MS-DOS and Word for Windows Source Code Available to the Public<\/a>.<\/p>\n<h2>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 Word 1.1a<\/h2>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/c0a\/b0e\/84e\/c0ab0e84e806df33eb89dbcfcd450b1e.png\" alt=\"\u0420\u0438\u0441\u0443\u043d\u043e\u043a 1. Word for Windows 1.1a (\u043d\u0430\u0436\u043c\u0438\u0442\u0435 \u043d\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u0434\u043b\u044f \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u044f).\"\/><\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/9cc\/edb\/b0a\/9ccedbb0a542f188651588e36a13d928.png\" alt=\"\u0420\u0438\u0441\u0443\u043d\u043e\u043a 1. Word for Windows 1.1a (\u043d\u0430\u0436\u043c\u0438\u0442\u0435 \u043d\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u0434\u043b\u044f \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u044f).\"\/><\/p>\n<p>  \u0420\u0438\u0441\u0443\u043d\u043e\u043a 1. Word for Windows 1.1a (\u043d\u0430\u0436\u043c\u0438\u0442\u0435 \u043d\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u0434\u043b\u044f \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u044f).<\/p>\n<p>  Word for Windows 1.1a \u0431\u044b\u043b \u0432\u044b\u043f\u0443\u0449\u0435\u043d \u0432 1990 \u0433\u043e\u0434\u0443. 25 \u043c\u0430\u0440\u0442\u0430 2014 \u043a\u043e\u0434 \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430 \u0441\u0442\u0430\u043b \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u043f\u0443\u0431\u043b\u0438\u043a\u0435. Word \u0431\u044b\u043b \u0438 \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0444\u043b\u0430\u0433\u043c\u0430\u043d\u0441\u043a\u0438\u043c \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u043c \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Microsoft. \u041c\u043d\u0435 \u0438 \u043c\u043d\u043e\u0433\u0438\u043c \u0434\u0440\u0443\u0433\u0438\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0442\u0430\u043a \u0441\u0438\u043b\u044c\u043d\u043e \u043f\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u0441\u0442\u0432\u043e\u0432\u0430\u043b \u043a\u043e\u043c\u043c\u0435\u0440\u0447\u0435\u0441\u043a\u0438\u043c \u0443\u0441\u043f\u0435\u0445\u0430\u043c \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Microsoft.<\/p>\n<p>  \u042f \u0440\u0435\u0448\u0438\u043b \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043a\u043e\u0434 Word 1.1a \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043d\u0430\u0448\u0435\u0433\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430 <a href=\"http:\/\/www.viva64.com\/ru\/pvs-studio\/\">PVS-Studio<\/a>. \u042d\u0442\u043e \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440 \u0421\u0438\/\u0421\u0438++ \u043a\u043e\u0434\u0430. \u0415\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u044d\u0442\u043e \u043d\u0435 \u0442\u0430\u043a \u043f\u0440\u043e\u0441\u0442\u043e. \u0410\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u043c\u0438, \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u043c\u0438 \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u0432 Visual Studio 2005. \u0410 \u0441\u0435\u0439\u0447\u0430\u0441 \u043f\u0440\u0435\u0434\u043e \u043c\u043d\u043e\u0439 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0421\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0431\u043e\u043b\u0435\u0435 20 \u043b\u0435\u0442. \u041c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u044d\u0442\u043e \u0434\u043e\u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430. \u041f\u043e \u043a\u0440\u0430\u0439\u043d\u0435\u0439 \u043c\u0435\u0440\u0435, \u0442\u043e\u0433\u0434\u0430 \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043b\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0430 \u044f\u0437\u044b\u043a\u0430 \u0421\u0438. \u041a\u0430\u0436\u0434\u044b\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0431\u044b\u043b \u0441\u0430\u043c \u043f\u043e \u0441\u0435\u0431\u0435. \u041a \u0441\u0447\u0430\u0441\u0442\u044c\u044e, \u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u043a\u043e\u0434\u0430\u0445 Word 1.1a \u043d\u0435 \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u043a\u0430\u043a\u0438\u0445-\u0442\u043e \u043d\u0435\u043e\u0431\u044b\u0447\u043d\u044b\u0445 \u043c\u043e\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043d\u0435\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430.<\/p>\n<p>  \u0414\u043b\u044f \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b <a href=\"http:\/\/www.viva64.com\/ru\/t\/0076\/\">\u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b<\/a> (*.i). \u0418\u043c\u0435\u044f \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b, \u043c\u043e\u0436\u043d\u043e \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u043c <a href=\"http:\/\/www.viva64.com\/ru\/b\/0219\/\">PVS-Studio Standalone<\/a>. \u0421 \u0435\u0433\u043e \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0430\u043d\u0430\u043b\u0438\u0437 \u0438 \u0438\u0437\u0443\u0447\u0438\u0442\u044c \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f. \u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440 \u043d\u0435 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d \u043d\u0430 \u0430\u043d\u0430\u043b\u0438\u0437 16-\u0431\u0438\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c. \u041d\u043e \u044d\u0442\u0438\u0445 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0431\u0443\u0434\u0435\u0442 \u0432\u043f\u043e\u043b\u043d\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u044f \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u0435\u043d\u0438\u044f \u043b\u044e\u0431\u043e\u043f\u044b\u0442\u0441\u0442\u0432\u0430. \u0412\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 24 \u043b\u0435\u0442\u043d\u0435\u0439 \u0434\u0430\u0432\u043d\u043e\u0441\u0442\u0438, \u043d\u0435\u0442 \u043d\u0438\u043a\u0430\u043a\u043e\u0433\u043e \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u043c\u044b\u0441\u043b\u0430.<\/p>\n<p>  \u0418\u0442\u0430\u043a, \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0437\u0430\u0433\u0432\u043e\u0437\u0434\u043a\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0430 \u0432 \u0442\u043e\u043c, \u043a\u0430\u043a \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b. \u042f \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u043b \u0441\u0432\u043e\u0435\u0433\u043e \u043a\u043e\u043b\u043b\u0435\u0433\u0443 \u043f\u043e\u043a\u043e\u043b\u0434\u043e\u0432\u0430\u0442\u044c \u0432 \u044d\u0442\u043e\u043c \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438. \u041e\u043d \u043f\u043e\u0434\u043e\u0448\u0451\u043b \u043a \u0440\u0435\u0448\u0435\u043d\u0438\u044e \u0432\u0435\u0441\u044c\u043c\u0430 \u0442\u0432\u043e\u0440\u0447\u0435\u0441\u043a\u0438. \u041e\u043d \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u043b \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e GCC 4.8.1. \u0412\u0440\u044f\u0434 \u043b\u0438 \u043a\u0442\u043e-\u0442\u043e \u0435\u0449\u0451 \u0442\u0430\u043a \u0438\u0437\u0434\u0435\u0432\u0430\u043b\u0441\u044f \u043d\u0430\u0434 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438 Word 1.1. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c GCC \u2014 \u043d\u0430\u0434\u043e \u0432\u0435\u0434\u044c \u0431\u044b\u043b\u043e \u0442\u0430\u043a\u043e\u0435 \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u0442\u044c. \u0424\u0430\u043d\u0442\u0430\u0437\u0451\u0440.<\/p>\n<p>  \u0421\u0430\u043c\u043e\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0435, \u0447\u0442\u043e \u0432\u044b\u0448\u043b\u043e \u0432\u043f\u043e\u043b\u043d\u0435 \u0443\u0434\u0430\u0447\u043d\u043e. \u0411\u044b\u043b\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0430\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u043b\u0430 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e GCC 4.8.1 \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0444\u0430\u0439\u043b \u0438\u0437 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043e\u043d \u043b\u0435\u0436\u0430\u043b. \u041f\u043e \u043c\u0435\u0440\u0435 \u0432\u044b\u0432\u043e\u0434\u0430 \u043e\u0448\u0438\u0431\u043e\u043a, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u0447\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432, \u0432 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u043b\u0438\u0441\u044c \u043a\u043b\u044e\u0447\u0438 -I \u0441 \u043f\u0443\u0442\u0451\u043c \u0434\u043e \u043d\u0443\u0436\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432. \u041f\u0430\u0440\u043e\u0447\u043a\u0430 \u043d\u0435\u043d\u0430\u0439\u0434\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u0447\u043d\u044b\u0445 \u0444\u0430\u043b\u043e\u0432 \u0431\u044b\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u044b \u043f\u0443\u0441\u0442\u044b\u043c\u0438. \u0412\u0441\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0440\u0430\u0441\u043a\u0440\u044b\u0442\u0438\u044f #include \u0431\u044b\u043b\u0438 \u0441\u0432\u044f\u0437\u0430\u043d\u044b \u0441 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0431\u044b\u043b\u0438 \u0437\u0430\u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u044b. \u041f\u0440\u0438 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u043b\u0441\u044f \u043c\u0430\u043a\u0440\u043e\u0441 WIN, \u0442.\u043a. \u0432 \u043a\u043e\u0434\u0435 \u0435\u0441\u0442\u044c \u0432\u0435\u0442\u043a\u0430 \u0434\u043b\u044f WIN \u0438 MAC.<\/p>\n<p>  \u0414\u0430\u043b\u044c\u0448\u0435 \u0432 \u0434\u0435\u043b\u043e \u0432\u0441\u0442\u0443\u043f\u0438\u043b PVS-Studio Standalone \u0438 \u0432\u0430\u0448 \u043f\u043e\u043a\u043e\u0440\u043d\u044b\u0439 \u0441\u043b\u0443\u0433\u0430. \u042f \u0432\u044b\u043f\u0438\u0441\u0430\u043b \u043f\u043e\u0434\u043e\u0437\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u044b \u043a\u043e\u0434\u0430 \u0438 \u0433\u043e\u0442\u043e\u0432 \u0432\u0430\u043c \u0438\u0445 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c. \u041d\u043e \u0432\u043d\u0430\u0447\u0430\u043b\u0435 \u0435\u0449\u0451 \u043a\u043e\u0435 \u0447\u0442\u043e \u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0435.<\/p>\n<h2>\u0420\u0430\u0437\u043d\u043e\u0435 \u043e \u043a\u043e\u0434\u0435 Word 1.1a<\/h2>\n<h3>\u0421\u0430\u043c\u044b\u0435 \u0441\u043b\u043e\u0436\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438<\/h3>\n<p>  \u0421\u0430\u043c\u0430\u044f \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0446\u0438\u043a\u043b\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0443 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439:<\/p>\n<ol>\n<li>CursUpDown \u2014 219; <\/li>\n<li>FIdle \u2014 192;<\/li>\n<li>CmdDrCurs1 \u2014 142.<\/li>\n<\/ol>\n<p>  <\/p>\n<h3>#ifdef WIN23<\/h3>\n<p>  \u041f\u0440\u043e\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u044f \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u043a\u043e\u0434\u044b \u0438 \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u0432 &quot;#ifdef WIN23&quot;, \u044f \u0437\u0430\u0443\u043b\u044b\u0431\u0430\u043b\u0441\u044f. \u0418 \u0434\u0430\u0436\u0435 \u0432\u044b\u043f\u0438\u0441\u0430\u043b \u044d\u0442\u043e \u043c\u0435\u0441\u0442\u043e. \u042f \u043f\u043e\u0434\u0443\u043c\u0430\u043b, \u0447\u0442\u043e \u044d\u0442\u043e \u043e\u043f\u0435\u0447\u0430\u0442\u043a\u0430 \u0438 \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e #ifdef WIN32.<\/p>\n<p>  \u041a\u043e\u0433\u0434\u0430 \u044f \u0443\u0432\u0438\u0434\u0435\u043b WIN23 \u0432\u0442\u043e\u0440\u043e\u0439 \u0440\u0430\u0437 \u044f \u0437\u0430\u0441\u043e\u043c\u043d\u0435\u0432\u0430\u043b\u0441\u044f. \u0410 \u043f\u043e\u0442\u043e\u043c \u0432\u0434\u0440\u0443\u0433 \u043e\u0441\u043e\u0437\u043d\u0430\u043b, \u0447\u0442\u043e \u044f \u0441\u043c\u043e\u0442\u0440\u044e \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 24 \u043b\u0435\u0442\u043d\u0435\u0439 \u0434\u0430\u0432\u043d\u043e\u0441\u0442\u0438. WIN23 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0432\u0435\u0440\u0441\u0438\u044e Windows 2.3. <\/p>\n<h3>\u0421\u0443\u0440\u043e\u0432\u044b\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430<\/h3>\n<p>  \u0412 \u043a\u043e\u0434\u0435 \u043c\u043d\u0435 \u043f\u043e\u043f\u0430\u043b\u0430\u0441\u044c \u0432\u043e\u0442 \u0442\u0430\u043a\u0430\u044f \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430.  <\/p>\n<pre><code class=\"cpp\">Assert((1 &gt; 0) == 1);<\/code><\/pre>\n<p>  \u041a\u0430\u0436\u0435\u0442\u0441\u044f \u043d\u0435\u0432\u0435\u0440\u043e\u044f\u0442\u043d\u044b\u043c, \u0447\u0442\u043e \u044d\u0442\u043e \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u043c\u043e\u0436\u0435\u0442 \u043d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c\u0441\u044f. \u041e\u0434\u043d\u0430\u043a\u043e, \u0435\u0441\u043b\u0438 \u0435\u0441\u0442\u044c \u0442\u0430\u043a\u0430\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430, \u0442\u043e \u0431\u044b\u043b \u0438 \u043f\u043e\u0432\u043e\u0434 \u0435\u0439 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c. \u0412 \u0442\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430 \u043d\u0435 \u0431\u044b\u043b\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0430 \u043d\u0430 \u044f\u0437\u044b\u043a. \u041a\u0430\u043a \u044f \u043f\u043e\u043d\u0438\u043c\u0430\u044e, \u0431\u044b\u043b\u043e \u0445\u043e\u0440\u043e\u0448\u0438\u043c \u0442\u043e\u043d\u043e\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0431\u043e\u0442\u0430 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432.<\/p>\n<p>  \u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u0435\u0441\u043b\u0438 \u0441\u0447\u0438\u0442\u0430\u0442\u044c K&amp;R \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u043c, \u0442\u043e \u043f\u043e \u0438\u0434\u0435\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u0435 ((1 &gt; 0) == 1) \u0432\u0441\u0435\u0433\u0434\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f. \u041d\u043e K&amp;R \u044d\u0442\u043e \u0431\u044b\u043b \u043b\u0438\u0448\u044c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442 \u0434\u0435-\u0444\u0430\u043a\u0442\u043e \u0438 \u043d\u0435 \u0431\u043e\u043b\u0435\u0435. \u042d\u0442\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u0430\u0434\u0435\u043a\u0432\u0430\u0442\u043d\u043e\u0441\u0442\u044c \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430. <\/p>\n<h2>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438<\/h2>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043e \u043f\u043e\u0434\u043e\u0437\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043c\u0435\u0441\u0442\u0430\u0445, \u043d\u0430\u0439\u0434\u0435\u043d\u043d\u044b\u0445 \u043c\u043d\u043e\u044e \u0432 \u043a\u043e\u0434\u0435. \u0414\u0443\u043c\u0430\u044e, \u0440\u0430\u0434\u0438 \u044d\u0442\u043e\u0433\u043e \u0432\u044b \u0438 \u0447\u0438\u0442\u0430\u0435\u0442\u0435 \u044d\u0442\u0443 \u0441\u0442\u0430\u0442\u044c\u044e. \u041f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u043c.<\/p>\n<h3>\u0411\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0446\u0438\u043a\u043b<\/h3>\n<p>  <\/p>\n<pre><code class=\"cpp\">void GetNameElk(elk, stOut) ELK elk; unsigned char *stOut; {   unsigned char *stElk = &amp;rgchElkNames[mpelkichName[elk]];   unsigned cch = stElk[0] + 1;    while (--cch &gt;= 0)     *stOut++ = *stElk++; }<\/code><\/pre>\n<p>  \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 PVS-Studio: <a href=\"http:\/\/www.viva64.com\/ru\/d\/0137\/\">V547<\/a> Expression &#8216;&#8212; cch &gt;= 0&#8217; is always true. Unsigned type value is always &gt;= 0. mergeelx.c 1188<\/p>\n<p>  \u0426\u0438\u043a\u043b \u00abwhile (&#8212;cch &gt;= 0)\u00bb \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f. \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f &#8216;cch&#8217; \u0438\u043c\u0435\u0435\u0442 \u0442\u0438\u043f unsigned. \u0417\u043d\u0430\u0447\u0438\u0442, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0435 \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0439 \u044d\u0442\u0443 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e, \u043e\u043d\u0430 \u0432\u0441\u0435\u0433\u0434\u0430 \u043e\u0441\u0442\u0430\u043d\u0435\u0442\u0441\u044f &gt;= 0.<\/p>\n<h3>\u0412\u044b\u0445\u043e\u0434 \u0437\u0430 \u0433\u0440\u0430\u043d\u0438\u0446\u0443 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0438\u0437-\u0437\u0430 \u043e\u043f\u0435\u0447\u0430\u0442\u043a\u0438<\/h3>\n<p>  <\/p>\n<pre><code class=\"cpp\">uns rgwSpare0 [5];  DumpHeader() {   ....   printUns (&quot;rgwSpare0[0]   = &quot;, Fib.rgwSpare0[5], 0, 0, fTrue);   printUns (&quot;rgwSpare0[1]   = &quot;, Fib.rgwSpare0[1], 1, 1, fTrue);   printUns (&quot;rgwSpare0[2]   = &quot;, Fib.rgwSpare0[2], 0, 0, fTrue);   printUns (&quot;rgwSpare0[3]   = &quot;, Fib.rgwSpare0[3], 1, 1, fTrue);   printUns (&quot;rgwSpare0[4]   = &quot;, Fib.rgwSpare0[4], 2, 2, fTrue);   .... }<\/code><\/pre>\n<p>  \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 PVS-Studio: <a href=\"http:\/\/www.viva64.com\/ru\/d\/0148\/\">V557<\/a> Array overrun is possible. The &#8216;5&#8217; index is pointing beyond array bound. dnatfile.c 444<\/p>\n<p>  \u041a\u0430\u043a-\u0442\u043e \u0442\u0430\u043a \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e: Fib.rgwSpare0[5]. \u042d\u0442\u043e \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e. \u0412 \u043c\u0430\u0441\u0441\u0438\u0432\u0435 \u0432\u0441\u0435\u0433\u043e 5 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432, \u0430 \u0437\u043d\u0430\u0447\u0438\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0438\u043d\u0434\u0435\u043a\u0441 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0440\u0430\u0432\u0435\u043d 4. \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 &#8216;5&#8217; \u044d\u0442\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043e\u043f\u0435\u0447\u0430\u0442\u043a\u0438. \u041f\u043e \u0432\u0441\u0435\u0439 \u0432\u0438\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u043b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0443\u043b\u0435\u0432\u043e\u0439 \u0438\u043d\u0434\u0435\u043a\u0441:  <\/p>\n<pre><code class=\"cpp\">printUns (&quot;rgwSpare0[0]   = &quot;, Fib.rgwSpare0[0], 0, 0, fTrue);<\/code><\/pre>\n<p>  <\/p>\n<h3>\u041d\u0435\u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f<\/h3>\n<p>  <\/p>\n<pre><code class=\"cpp\">FPrintSummaryInfo(doc, cpFirst, cpLim) int doc; CP cpFirst, cpLim; {   int fRet = fFalse;   int pgnFirst = vpgnFirst;   int pgnLast = vpgnLast;   int sectFirst = vsectFirst;   int sectLast = sectLast;   .... }<\/code><\/pre>\n<p>  \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 PVS-Studio: <a href=\"http:\/\/www.viva64.com\/ru\/d\/0173\/\">V573<\/a> Uninitialized variable &#8216;sectLast&#8217; was used. The variable was used to initialize itself. print2.c 599<\/p>\n<p>  \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f &#8216;sectLast&#8217; \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u0430\u043c\u0430 \u0441\u0435\u0431\u0435:  <\/p>\n<pre><code class=\"cpp\">int sectLast = sectLast;<\/code><\/pre>\n<p>  \u041a\u0430\u0436\u0435\u0442\u0441\u044f, \u0434\u043b\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u043b\u0430 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0430 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f &#8216;vsectLast&#8217;:  <\/p>\n<pre><code class=\"cpp\">int sectLast = vsectLast;<\/code><\/pre>\n<p>  \u041d\u0430\u0448\u043b\u043e\u0441\u044c \u0435\u0449\u0451 \u043e\u0434\u043d\u0430 \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430. \u0412\u0438\u0434\u0438\u043c\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u0441\u0442\u0432\u0438\u0435 Copy-Paste:<\/p>\n<p>  V573 Uninitialized variable &#8216;sectLast&#8217; was used. The variable was used to initialize itself. print2.c 719<\/p>\n<h3>\u041d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/h3>\n<p>  <\/p>\n<pre><code class=\"cpp\">CmdBitmap() {   static int  iBitmap = 0;   ....   iBitmap = ++iBitmap % MAXBITMAP; }<\/code><\/pre>\n<p>  \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 PVS-Studio: <a href=\"http:\/\/www.viva64.com\/ru\/d\/0173\/\">V567<\/a> Undefined behavior. The &#8216;iBitmap&#8217; variable is modified while being used twice between sequence points. ddedit.c 107<\/p>\n<p>  \u041d\u0435 \u0437\u043d\u0430\u044e, \u043a\u0430\u043a \u043a \u0442\u0430\u043a\u043e\u043c\u0443 \u043a\u043e\u0434\u0443 \u043e\u0442\u043d\u043e\u0441\u0438\u043b\u0438\u0441\u044c 20 \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434. \u041d\u043e \u0441\u0435\u0439\u0447\u0430\u0441 \u044d\u0442\u043e \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0445\u0443\u043b\u0438\u0433\u0430\u043d\u0441\u0442\u0432\u043e\u043c, \u0442\u0430\u043a \u043a\u0430\u043a \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u043d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u043c\u0443 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044e.<\/p>\n<p>  \u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e: <\/p>\n<ul>\n<li>V567 Undefined behavior. The &#8216;iIcon&#8217; variable is modified while being used twice between sequence points. ddedit.c 132<\/li>\n<li>V567 Undefined behavior. The &#8216;iCursor&#8217; variable is modified while being used twice between sequence points. ddedit.c 150<\/li>\n<\/ul>\n<p>  <\/p>\n<h3>\u041d\u0435\u0443\u0434\u0430\u0447\u043d\u044b\u0439 \u0432\u044b\u0437\u043e\u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 printf()<\/h3>\n<p>  <\/p>\n<pre><code class=\"cpp\">ReadAndDumpLargeSttb(cb,err)   int     cb;   int     err; {   ....   printf(&quot;\\n - %d strings were read, &quot;          &quot;%d were expected (decimal numbers) -\\n&quot;);   .... }<\/code><\/pre>\n<p>  \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 PVS-Studio: <a href=\"http:\/\/www.viva64.com\/ru\/d\/0176\/\">V576<\/a> Incorrect format. A different number of actual arguments is expected while calling &#8216;printf&#8217; function. Expected: 3. Present: 1. dini.c 498<\/p>\n<p>  \u0424\u0443\u043d\u043a\u0446\u0438\u044f printf(), \u044d\u0442\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0441 <a href=\"http:\/\/www.viva64.com\/ru\/t\/0069\/\">\u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432<\/a>. \u0415\u0439 \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b, \u0430 \u043c\u043e\u0436\u043d\u043e \u0438 \u043d\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c. \u0412\u043e\u0442 \u0437\u0434\u0435\u0441\u044c \u043f\u0440\u043e \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b \u0437\u0430\u0431\u044b\u043b\u0438, \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0447\u0435\u0433\u043e \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u043d \u043c\u0443\u0441\u043e\u0440.<\/p>\n<h3>\u041d\u0435\u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438<\/h3>\n<p>  \u0412 \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0443\u0442\u0438\u043b\u0438\u0442, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0432 \u0441\u043e\u0441\u0442\u0430\u0432\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432 Word, \u043c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u0432\u043e\u043e\u0431\u0449\u0435 \u043d\u0435\u043f\u043e\u043d\u044f\u0442\u043d\u043e\u0435.  <\/p>\n<pre><code class=\"cpp\">main(argc, argv) int argc; char * argv []; {   FILE * pfl;   ....   for (argi = 1; argi &lt; argc; ++argi)   {     if (FWild(argv[argi]))     {       FEnumWild(argv[argi], FEWild, 0);     }     else     {       FEWild(argv[argi], 0);     }      fclose(pfl);   }   .... }<\/code><\/pre>\n<p>  \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 PVS-Studio: <a href=\"http:\/\/www.viva64.com\/ru\/d\/0230\/\">V614<\/a> Uninitialized pointer &#8216;pfl&#8217; used. Consider checking the first actual argument of the &#8216;fclose&#8217; function. eldes.c 87<\/p>\n<p>  \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f &#8216;pfl&#8217; \u043d\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0434\u043e \u0446\u0438\u043a\u043b\u0430 \u0438 \u0432 \u0441\u0430\u043c\u043e\u043c \u0446\u0438\u043a\u043b\u0435. \u0417\u0430\u0442\u043e \u043c\u043d\u043e\u0433\u043e \u0440\u0430\u0437 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f fclose(pfl). \u0412\u043f\u0440\u043e\u0447\u0435\u043c, \u0432\u0441\u0451 \u044d\u0442\u043e \u0432\u043f\u043e\u043b\u043d\u0435 \u043c\u043e\u0433\u043b\u043e \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u0435\u0440\u043d\u0451\u0442 \u0441\u0442\u0430\u0442\u0443\u0441 \u043e\u0448\u0438\u0431\u043a\u0438, \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442 \u0441\u0432\u043e\u044e \u0440\u0430\u0431\u043e\u0442\u0443.<\/p>\n<p>  \u0410 \u0432\u043e\u0442 \u0435\u0449\u0451 \u043e\u0434\u043d\u0430 \u043e\u043f\u0430\u0441\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f. \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0435\u0451 \u0432\u044b\u0437\u043e\u0432 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u0442 \u043a \u0430\u0432\u0430\u0440\u0438\u0439\u043d\u043e\u043c\u0443 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b.  <\/p>\n<pre><code class=\"cpp\">FPathSpawn( rgsz ) char *rgsz[]; { \/* puts the correct path at the beginning of rgsz[0]      and calls FSpawnRgsz *\/   char *rgsz0;    strcpy(rgsz0, szToolsDir);   strcat(rgsz0, &quot;\\\\&quot;);   strcat(rgsz0, rgsz[0]);   return FSpawnRgsz(rgsz0, rgsz); }<\/code><\/pre>\n<p>  \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 PVS-Studio: V614 Uninitialized pointer &#8216;rgsz0&#8217; used. Consider checking the first actual argument of the &#8216;strcpy&#8217; function. makeopus.c 961<\/p>\n<p>  \u0423\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c &#8216; rgsz0&#8217; \u043d\u0438\u0447\u0435\u043c \u043d\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442\u0441\u044f. \u042d\u0442\u043e \u043d\u0435 \u043c\u0435\u0448\u0430\u0435\u0442 \u043d\u0430\u0447\u0430\u0442\u044c \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u043d\u0435\u0433\u043e \u0441\u0442\u0440\u043e\u043a\u0443.<\/p>\n<h3>\u041e\u043f\u0435\u0447\u0430\u0442\u043a\u0430 \u0432 \u0443\u0441\u043b\u043e\u0432\u0438\u0438<\/h3>\n<p>  <\/p>\n<pre><code class=\"cpp\">.... #define wkHdr    0x4000 #define wkFtn    0x2000 #define wkAtn    0x0008 .... #define wkSDoc    (wkAtn+wkFtn+wkHdr)  CMD CmdGoto (pcmb) CMB * pcmb; {   ....   int wk = PwwdWw(wwCur)-&gt;wk;     if (wk | wkSDoc)       NewCurWw((*hmwdCur)-&gt;wwUpper, fTrue);   .... }<\/code><\/pre>\n<p>  \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 PVS-Studio: <a href=\"http:\/\/www.viva64.com\/ru\/d\/0234\/\">V617<\/a> Consider inspecting the condition. The &#8216;(0x0008 + 0x2000 + 0x4000)&#8217; argument of the &#8216;|&#8217; bitwise operation contains a non-zero value. dlgmisc.c 409<\/p>\n<p>  \u0423\u0441\u043b\u043e\u0432\u0438\u0435 (wk | wkSDoc) \u0432\u0441\u0435\u0433\u0434\u0430 \u0438\u0441\u0442\u0438\u043d\u043d\u043e. \u041d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435, \u0437\u0434\u0435\u0441\u044c, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0445\u043e\u0442\u0435\u043b\u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c:  <\/p>\n<pre><code class=\"cpp\">if (wk &amp; wkSDoc)<\/code><\/pre>\n<p>  \u0412 \u043e\u0431\u0449\u0435\u043c, \u043f\u0435\u0440\u0435\u043f\u0443\u0442\u0430\u043b\u0438 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 | \u0438 &amp;.<\/p>\n<h3>\u0418 \u043f\u043e\u0434 \u043a\u043e\u043d\u0435\u0446 \u0434\u043b\u0438\u043d\u043d\u044b\u0439, \u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 <\/h3>\n<p>  <\/p>\n<pre><code class=\"cpp\">int TmcCharacterLooks(pcmb) CMB * pcmb; {   ....   if (qps &lt; 0)   {     pcab-&gt;wCharQpsSpacing = -qps;     pcab-&gt;iCharIS = 2;   }   else  if (qps &gt; 0)   {     pcab-&gt;iCharIS = 1;   }   else   {     pcab-&gt;iCharIS = 0;   }   ....   if (hps &lt; 0)   {     pcab-&gt;wCharHpsPos = -hps;     pcab-&gt;iCharPos = 2;   }   else  if (hps &gt; 0)   {     pcab-&gt;iCharPos = 1;   }   else   {     pcab-&gt;iCharPos = 1;   }   .... }<\/code><\/pre>\n<p>  \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 PVS-Studio: <a href=\"http:\/\/www.viva64.com\/ru\/d\/0112\/\">V523<\/a> The &#8216;then&#8217; statement is equivalent to the &#8216;else&#8217; statement. dlglook1.c 873<\/p>\n<p>  \u041a\u043e\u0433\u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0441 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 &#8216;qps&#8217;, \u0442\u043e \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442 \u0432 &#8216;pcab-&gt;iCharIS&#8217; \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f: 2, 1, 0.<\/p>\n<p>  \u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0441 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 &#8216;hps&#8217;. \u041d\u043e \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e &#8216;pcab-&gt;iCharPos&#8217; \u043f\u043e\u043c\u0435\u0449\u0430\u044e\u0442\u0441\u044f \u043f\u043e\u0434\u043e\u0437\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430: 2, 1, 1.<\/p>\n<p>  \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u044d\u0442\u043e \u043e\u043f\u0435\u0447\u0430\u0442\u043a\u0430. \u0412 \u0441\u0430\u043c\u043e\u043c \u043a\u043e\u043d\u0446\u0435, \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435, \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043b\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u043e\u043b\u044c.<\/p>\n<h2>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h2>\n<p>  \u041d\u0430\u0439\u0434\u0435\u043d\u043e \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0441\u0442\u0440\u0430\u043d\u043d\u044b\u0445 \u043c\u0435\u0441\u0442. \u041f\u0440\u0438\u0447\u0438\u043d\u044b \u0434\u0432\u0435. \u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445, \u043a\u043e\u0434 \u043c\u043d\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0438 \u0432\u0435\u0441\u044c\u043c\u0430 \u043f\u043e\u043d\u044f\u0442\u043d\u043e. \u0412\u043e-\u0432\u0442\u043e\u0440\u044b\u0445, \u0430\u043d\u0430\u043b\u0438\u0437 \u0431\u044b\u043b \u0432\u0441\u0435-\u0442\u0430\u043a\u0438 \u043d\u0435\u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u043c. \u0423\u0447\u0438\u0442\u044c \u0436\u0435 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044f\u043c \u0441\u0442\u0430\u0440\u043e\u0433\u043e \u0421\u0438 \u043d\u0435\u0442 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043d\u0430\u0434\u043e\u0431\u043d\u043e\u0441\u0442\u0438.<\/p>\n<p>  \u041d\u0430\u0434\u0435\u044e\u0441\u044c, \u044f \u043f\u043e\u0434\u0430\u0440\u0438\u043b \u0432\u0430\u043c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0438\u043d\u0443\u0442 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0433\u043e \u0447\u0442\u0435\u043d\u0438\u044f. \u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435. \u0418 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440 PVS-Studio \u043d\u0430 \u0441\u0432\u043e\u0451\u043c \u043a\u043e\u0434\u0435.<\/p>\n<h2>P.S.<\/h2>\n<p>  \u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438: &quot;<a href=\"http:\/\/www.viva64.com\/en\/b\/0245\/\">Archeology for Entertainment, or Checking Microsoft Word 1.1a with PVS-Studio<\/a>&quot;.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041f\u0440\u043e\u0447\u0438\u0442\u0430\u043b\u0438 \u0441\u0442\u0430\u0442\u044c\u044e \u0438 \u0435\u0441\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0441?<\/b><\/p>\n<div class=\"spoiler_text\">\u0427\u0430\u0441\u0442\u043e \u043a \u043d\u0430\u0448\u0438\u043c \u0441\u0442\u0430\u0442\u044c\u044f\u043c \u0437\u0430\u0434\u0430\u044e\u0442 \u043e\u0434\u043d\u0438 \u0438 \u0442\u0435 \u0436\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b. \u041e\u0442\u0432\u0435\u0442\u044b \u043d\u0430 \u043d\u0438\u0445 \u043c\u044b \u0441\u043e\u0431\u0440\u0430\u043b\u0438 \u0437\u0434\u0435\u0441\u044c: <a href=\"http:\/\/www.viva64.com\/ru\/a\/0085\/\">\u041e\u0442\u0432\u0435\u0442\u044b \u043d\u0430 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439 \u0441\u0442\u0430\u0442\u0435\u0439 \u043f\u0440\u043e PVS-Studio \u0438 CppCat, \u0432\u0435\u0440\u0441\u0438\u044f 2014<\/a>. \u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u044c\u0442\u0435\u0441\u044c \u0441\u043e \u0441\u043f\u0438\u0441\u043a\u043e\u043c.  <\/div>\n<\/div>\n<div class=\"clear\"><\/div>\n<\/p><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/habrahabr.ru\/company\/pvs-studio\/blog\/217921\/\"> http:\/\/habrahabr.ru\/company\/pvs-studio\/blog\/217921\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"content html_format\">   \t<img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/ac6\/d5d\/872\/ac6d5d87220b61d9c01d0bb05aff7a43.png\" alt=\"\u0427\u0435\u0440\u0435\u043f \u0435\u0434\u0438\u043d\u043e\u0440\u043e\u0433\u0430\" align=\"left\"\/><br \/>  \u041d\u0435\u0434\u0430\u0432\u043d\u043e \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Microsoft \u0441\u0434\u0435\u043b\u0430\u043b\u0430 \u043f\u043e\u0434\u0430\u0440\u043e\u043a \u0432\u0441\u0435\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u043e\u0442\u044f\u0442 \u043f\u043e\u043a\u043e\u043f\u0430\u0442\u044c\u0441\u044f \u0432 \u0447\u0435\u043c-\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u043c. Microsoft \u043e\u0442\u043a\u0440\u044b\u043b\u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 MS-DOS v 1.1, v 2.0 \u0438 Word for Windows 1.1a. \u041e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 MS-DOS \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u043d\u0430 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0435, \u0438 \u043a \u043d\u0435\u0439 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440 \u043d\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u043c. \u0410 \u0432\u043e\u0442 Word \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0421\u0438. \u0418\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u0430\u043c Word 1.1a \u043f\u043e\u0447\u0442\u0438 25 \u043b\u0435\u0442, \u043e\u0434\u043d\u0430\u043a\u043e \u043d\u0430\u043c \u043a\u043e\u0435-\u043a\u0430\u043a \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0438\u0445 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c. \u041a\u043e\u043d\u0435\u0447\u043d\u043e \u043d\u0438\u043a\u0430\u043a\u043e\u0439 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0446\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0432 \u044d\u0442\u043e\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0435 \u043d\u0435\u0442. Just for fun.  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-217921","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/217921","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=217921"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/217921\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=217921"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=217921"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=217921"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}