diff options
-rw-r--r-- | awklib/eg/lib/isnumeric.awk | 5 | ||||
-rw-r--r-- | doc/ChangeLog | 9 | ||||
-rw-r--r-- | doc/gawk.info | 600 | ||||
-rw-r--r-- | doc/gawk.texi | 10 | ||||
-rw-r--r-- | doc/gawktexi.in | 10 |
5 files changed, 328 insertions, 306 deletions
diff --git a/awklib/eg/lib/isnumeric.awk b/awklib/eg/lib/isnumeric.awk index c2699022..461ba91a 100644 --- a/awklib/eg/lib/isnumeric.awk +++ b/awklib/eg/lib/isnumeric.awk @@ -12,8 +12,3 @@ function isnumeric(x, f) return 0 } } - -Please note that leading or trailing white space is disregarded in deciding -whether a value is numeric or not, so if it matters to you, you may want -to add an additional check for that. - diff --git a/doc/ChangeLog b/doc/ChangeLog index f90def55..b18ff585 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,12 @@ +2021-06-25 Arnold D. Robbins <arnold@skeeve.com> + + * gawktexi.in (Isnumeric Function): Some final (we hope) tweaks. + +2021-06-24 Andrew J. Schorr <aschorr@telemetry-investments.com> + + * gawktexi.in (Isnumeric Function): Fix location of endfile + tag, and add a comment about how this differs from x+0 == x. + 2021-06-23 Arnold D. Robbins <arnold@skeeve.com> * gawktexi.in (Isnumeric Function): Add an additional paragraph diff --git a/doc/gawk.info b/doc/gawk.info index 0d4ec9f9..0db5773e 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -16351,10 +16351,16 @@ user input by using the 'split()' function: } } - Please note that leading or trailing white space is disregarded in deciding - whether a value is numeric or not, so if it matters to you, you may want - to add an additional check for that. + Please note that leading or trailing white space is disregarded in +deciding whether a value is numeric or not, so if it matters to you, you +may want to add an additional check for that. + Traditionally, it has been recommended to check for numeric values +using the test 'x+0 == x'. This function is superior in two ways: it +will not report that unassigned variables contain numeric values; and it +recognizes string values with numeric contents. On the other hand, it +uses the 'typeof()' function (*note Type Functions::), which is specific +to 'gawk'. File: gawk.info, Node: Data File Management, Next: Getopt Function, Prev: General Functions, Up: Library Functions @@ -38664,300 +38670,300 @@ Node: Getlocaltime Function673918 Node: Readfile Function677660 Node: Shell Quoting679637 Node: Isnumeric Function681065 -Node: Data File Management682046 -Node: Filetrans Function682678 -Node: Rewind Function686774 -Node: File Checking688683 -Ref: File Checking-Footnote-1690017 -Node: Empty Files690218 -Node: Ignoring Assigns692197 -Node: Getopt Function693747 -Ref: Getopt Function-Footnote-1708970 -Node: Passwd Functions709170 -Ref: Passwd Functions-Footnote-1718009 -Node: Group Functions718097 -Ref: Group Functions-Footnote-1725995 -Node: Walking Arrays726202 -Node: Library Functions Summary729210 -Node: Library Exercises730616 -Node: Sample Programs731081 -Node: Running Examples731851 -Node: Clones732579 -Node: Cut Program733803 -Node: Egrep Program743943 -Node: Id Program752944 -Node: Split Program762891 -Ref: Split Program-Footnote-1772784 -Node: Tee Program772957 -Node: Uniq Program775747 -Node: Wc Program783335 -Node: Bytes vs. Characters783722 -Node: Using extensions785270 -Node: wc program786024 -Node: Miscellaneous Programs790889 -Node: Dupword Program792102 -Node: Alarm Program794132 -Node: Translate Program798987 -Ref: Translate Program-Footnote-1803552 -Node: Labels Program803822 -Ref: Labels Program-Footnote-1807173 -Node: Word Sorting807257 -Node: History Sorting811329 -Node: Extract Program813554 -Node: Simple Sed821608 -Node: Igawk Program824682 -Ref: Igawk Program-Footnote-1839013 -Ref: Igawk Program-Footnote-2839215 -Ref: Igawk Program-Footnote-3839337 -Node: Anagram Program839452 -Node: Signature Program842514 -Node: Programs Summary843761 -Node: Programs Exercises844975 -Ref: Programs Exercises-Footnote-1849105 -Node: Advanced Features849191 -Node: Nondecimal Data851322 -Node: Boolean Typed Values852920 -Node: Array Sorting854801 -Node: Controlling Array Traversal855506 -Ref: Controlling Array Traversal-Footnote-1863874 -Node: Array Sorting Functions863992 -Ref: Array Sorting Functions-Footnote-1869083 -Node: Two-way I/O869279 -Ref: Two-way I/O-Footnote-1877005 -Ref: Two-way I/O-Footnote-2877192 -Node: TCP/IP Networking877274 -Node: Profiling880392 -Node: Extension Philosophy889701 -Node: Advanced Features Summary891180 -Node: Internationalization893195 -Node: I18N and L10N894869 -Node: Explaining gettext895556 -Ref: Explaining gettext-Footnote-1901448 -Ref: Explaining gettext-Footnote-2901633 -Node: Programmer i18n901798 -Ref: Programmer i18n-Footnote-1906747 -Node: Translator i18n906796 -Node: String Extraction907590 -Ref: String Extraction-Footnote-1908722 -Node: Printf Ordering908808 -Ref: Printf Ordering-Footnote-1911594 -Node: I18N Portability911658 -Ref: I18N Portability-Footnote-1914114 -Node: I18N Example914177 -Ref: I18N Example-Footnote-1917452 -Ref: I18N Example-Footnote-2917525 -Node: Gawk I18N917634 -Node: I18N Summary918283 -Node: Debugger919624 -Node: Debugging920624 -Node: Debugging Concepts921065 -Node: Debugging Terms922874 -Node: Awk Debugging925449 -Ref: Awk Debugging-Footnote-1926394 -Node: Sample Debugging Session926526 -Node: Debugger Invocation927060 -Node: Finding The Bug928446 -Node: List of Debugger Commands934920 -Node: Breakpoint Control936253 -Node: Debugger Execution Control939947 -Node: Viewing And Changing Data943309 -Node: Execution Stack946850 -Node: Debugger Info948487 -Node: Miscellaneous Debugger Commands952558 -Node: Readline Support957620 -Node: Limitations958516 -Node: Debugging Summary961070 -Node: Namespaces962349 -Node: Global Namespace963460 -Node: Qualified Names964858 -Node: Default Namespace965857 -Node: Changing The Namespace966598 -Node: Naming Rules968212 -Node: Internal Name Management970060 -Node: Namespace Example971102 -Node: Namespace And Features973664 -Node: Namespace Summary975099 -Node: Arbitrary Precision Arithmetic976576 -Node: Computer Arithmetic978063 -Ref: table-numeric-ranges981829 -Ref: table-floating-point-ranges982322 -Ref: Computer Arithmetic-Footnote-1982980 -Node: Math Definitions983037 -Ref: table-ieee-formats986013 -Node: MPFR features986580 -Node: FP Math Caution988298 -Ref: FP Math Caution-Footnote-1989370 -Node: Inexactness of computations989739 -Node: Inexact representation990770 -Node: Comparing FP Values992130 -Node: Errors accumulate993371 -Node: Strange values994827 -Ref: Strange values-Footnote-1997415 -Node: Getting Accuracy997520 -Node: Try To Round1000230 -Node: Setting precision1001129 -Ref: table-predefined-precision-strings1001826 -Node: Setting the rounding mode1003656 -Ref: table-gawk-rounding-modes1004030 -Ref: Setting the rounding mode-Footnote-11007961 -Node: Arbitrary Precision Integers1008140 -Ref: Arbitrary Precision Integers-Footnote-11011315 -Node: Checking for MPFR1011464 -Node: POSIX Floating Point Problems1012938 -Ref: POSIX Floating Point Problems-Footnote-11017223 -Node: Floating point summary1017261 -Node: Dynamic Extensions1019451 -Node: Extension Intro1021004 -Node: Plugin License1022270 -Node: Extension Mechanism Outline1023067 -Ref: figure-load-extension1023506 -Ref: figure-register-new-function1025071 -Ref: figure-call-new-function1026163 -Node: Extension API Description1028225 -Node: Extension API Functions Introduction1029938 -Ref: table-api-std-headers1031774 -Node: General Data Types1036023 -Ref: General Data Types-Footnote-11044729 -Node: Memory Allocation Functions1045028 -Ref: Memory Allocation Functions-Footnote-11049529 -Node: Constructor Functions1049628 -Node: API Ownership of MPFR and GMP Values1053281 -Node: Registration Functions1054594 -Node: Extension Functions1055294 -Node: Exit Callback Functions1060616 -Node: Extension Version String1061866 -Node: Input Parsers1062529 -Node: Output Wrappers1075250 -Node: Two-way processors1079762 -Node: Printing Messages1082027 -Ref: Printing Messages-Footnote-11083198 -Node: Updating ERRNO1083351 -Node: Requesting Values1084090 -Ref: table-value-types-returned1084827 -Node: Accessing Parameters1085935 -Node: Symbol Table Access1087172 -Node: Symbol table by name1087684 -Ref: Symbol table by name-Footnote-11090708 -Node: Symbol table by cookie1090836 -Ref: Symbol table by cookie-Footnote-11095021 -Node: Cached values1095085 -Ref: Cached values-Footnote-11098621 -Node: Array Manipulation1098774 -Ref: Array Manipulation-Footnote-11099865 -Node: Array Data Types1099902 -Ref: Array Data Types-Footnote-11102560 -Node: Array Functions1102652 -Node: Flattening Arrays1107150 -Node: Creating Arrays1114126 -Node: Redirection API1118893 -Node: Extension API Variables1121726 -Node: Extension Versioning1122437 -Ref: gawk-api-version1122866 -Node: Extension GMP/MPFR Versioning1124597 -Node: Extension API Informational Variables1126225 -Node: Extension API Boilerplate1127298 -Node: Changes from API V11131272 -Node: Finding Extensions1132844 -Node: Extension Example1133403 -Node: Internal File Description1134201 -Node: Internal File Ops1138281 -Ref: Internal File Ops-Footnote-11149631 -Node: Using Internal File Ops1149771 -Ref: Using Internal File Ops-Footnote-11152154 -Node: Extension Samples1152428 -Node: Extension Sample File Functions1153957 -Node: Extension Sample Fnmatch1161606 -Node: Extension Sample Fork1163093 -Node: Extension Sample Inplace1164311 -Node: Extension Sample Ord1167937 -Node: Extension Sample Readdir1168773 -Ref: table-readdir-file-types1169662 -Node: Extension Sample Revout1170729 -Node: Extension Sample Rev2way1171318 -Node: Extension Sample Read write array1172058 -Node: Extension Sample Readfile1174000 -Node: Extension Sample Time1175095 -Node: Extension Sample API Tests1176847 -Node: gawkextlib1177339 -Node: Extension summary1180257 -Node: Extension Exercises1183959 -Node: Language History1185201 -Node: V7/SVR3.11186857 -Node: SVR41189009 -Node: POSIX1190443 -Node: BTL1191824 -Node: POSIX/GNU1192553 -Node: Feature History1198331 -Node: Common Extensions1215506 -Node: Ranges and Locales1216789 -Ref: Ranges and Locales-Footnote-11221405 -Ref: Ranges and Locales-Footnote-21221432 -Ref: Ranges and Locales-Footnote-31221667 -Node: Contributors1221890 -Node: History summary1227887 -Node: Installation1229267 -Node: Gawk Distribution1230211 -Node: Getting1230695 -Node: Extracting1231658 -Node: Distribution contents1233296 -Node: Unix Installation1239776 -Node: Quick Installation1240458 -Node: Compiling with MPFR1242939 -Node: Shell Startup Files1243631 -Node: Additional Configuration Options1244720 -Node: Configuration Philosophy1247035 -Node: Non-Unix Installation1249404 -Node: PC Installation1249864 -Node: PC Binary Installation1250702 -Node: PC Compiling1251137 -Node: PC Using1252254 -Node: Cygwin1255807 -Node: MSYS1257031 -Node: VMS Installation1257633 -Node: VMS Compilation1258424 -Ref: VMS Compilation-Footnote-11259653 -Node: VMS Dynamic Extensions1259711 -Node: VMS Installation Details1261396 -Node: VMS Running1263649 -Node: VMS GNV1267928 -Node: VMS Old Gawk1268663 -Node: Bugs1269134 -Node: Bug address1269883 -Node: Usenet1272865 -Node: Performance bugs1273874 -Node: Maintainers1276731 -Node: Other Versions1277926 -Node: Installation summary1285791 -Node: Notes1287000 -Node: Compatibility Mode1287794 -Node: Additions1288576 -Node: Accessing The Source1289501 -Node: Adding Code1290938 -Node: New Ports1297157 -Node: Derived Files1301532 -Ref: Derived Files-Footnote-11307192 -Ref: Derived Files-Footnote-21307227 -Ref: Derived Files-Footnote-31307825 -Node: Future Extensions1307939 -Node: Implementation Limitations1308597 -Node: Extension Design1309807 -Node: Old Extension Problems1310951 -Ref: Old Extension Problems-Footnote-11312469 -Node: Extension New Mechanism Goals1312526 -Ref: Extension New Mechanism Goals-Footnote-11315890 -Node: Extension Other Design Decisions1316079 -Node: Extension Future Growth1318192 -Node: Notes summary1318798 -Node: Basic Concepts1319956 -Node: Basic High Level1320637 -Ref: figure-general-flow1320919 -Ref: figure-process-flow1321604 -Ref: Basic High Level-Footnote-11324905 -Node: Basic Data Typing1325090 -Node: Glossary1328418 -Node: Copying1360305 -Node: GNU Free Documentation License1397848 -Node: Index1422968 +Node: Data File Management682402 +Node: Filetrans Function683034 +Node: Rewind Function687130 +Node: File Checking689039 +Ref: File Checking-Footnote-1690373 +Node: Empty Files690574 +Node: Ignoring Assigns692553 +Node: Getopt Function694103 +Ref: Getopt Function-Footnote-1709326 +Node: Passwd Functions709526 +Ref: Passwd Functions-Footnote-1718365 +Node: Group Functions718453 +Ref: Group Functions-Footnote-1726351 +Node: Walking Arrays726558 +Node: Library Functions Summary729566 +Node: Library Exercises730972 +Node: Sample Programs731437 +Node: Running Examples732207 +Node: Clones732935 +Node: Cut Program734159 +Node: Egrep Program744299 +Node: Id Program753300 +Node: Split Program763247 +Ref: Split Program-Footnote-1773140 +Node: Tee Program773313 +Node: Uniq Program776103 +Node: Wc Program783691 +Node: Bytes vs. Characters784078 +Node: Using extensions785626 +Node: wc program786380 +Node: Miscellaneous Programs791245 +Node: Dupword Program792458 +Node: Alarm Program794488 +Node: Translate Program799343 +Ref: Translate Program-Footnote-1803908 +Node: Labels Program804178 +Ref: Labels Program-Footnote-1807529 +Node: Word Sorting807613 +Node: History Sorting811685 +Node: Extract Program813910 +Node: Simple Sed821964 +Node: Igawk Program825038 +Ref: Igawk Program-Footnote-1839369 +Ref: Igawk Program-Footnote-2839571 +Ref: Igawk Program-Footnote-3839693 +Node: Anagram Program839808 +Node: Signature Program842870 +Node: Programs Summary844117 +Node: Programs Exercises845331 +Ref: Programs Exercises-Footnote-1849461 +Node: Advanced Features849547 +Node: Nondecimal Data851678 +Node: Boolean Typed Values853276 +Node: Array Sorting855157 +Node: Controlling Array Traversal855862 +Ref: Controlling Array Traversal-Footnote-1864230 +Node: Array Sorting Functions864348 +Ref: Array Sorting Functions-Footnote-1869439 +Node: Two-way I/O869635 +Ref: Two-way I/O-Footnote-1877361 +Ref: Two-way I/O-Footnote-2877548 +Node: TCP/IP Networking877630 +Node: Profiling880748 +Node: Extension Philosophy890057 +Node: Advanced Features Summary891536 +Node: Internationalization893551 +Node: I18N and L10N895225 +Node: Explaining gettext895912 +Ref: Explaining gettext-Footnote-1901804 +Ref: Explaining gettext-Footnote-2901989 +Node: Programmer i18n902154 +Ref: Programmer i18n-Footnote-1907103 +Node: Translator i18n907152 +Node: String Extraction907946 +Ref: String Extraction-Footnote-1909078 +Node: Printf Ordering909164 +Ref: Printf Ordering-Footnote-1911950 +Node: I18N Portability912014 +Ref: I18N Portability-Footnote-1914470 +Node: I18N Example914533 +Ref: I18N Example-Footnote-1917808 +Ref: I18N Example-Footnote-2917881 +Node: Gawk I18N917990 +Node: I18N Summary918639 +Node: Debugger919980 +Node: Debugging920980 +Node: Debugging Concepts921421 +Node: Debugging Terms923230 +Node: Awk Debugging925805 +Ref: Awk Debugging-Footnote-1926750 +Node: Sample Debugging Session926882 +Node: Debugger Invocation927416 +Node: Finding The Bug928802 +Node: List of Debugger Commands935276 +Node: Breakpoint Control936609 +Node: Debugger Execution Control940303 +Node: Viewing And Changing Data943665 +Node: Execution Stack947206 +Node: Debugger Info948843 +Node: Miscellaneous Debugger Commands952914 +Node: Readline Support957976 +Node: Limitations958872 +Node: Debugging Summary961426 +Node: Namespaces962705 +Node: Global Namespace963816 +Node: Qualified Names965214 +Node: Default Namespace966213 +Node: Changing The Namespace966954 +Node: Naming Rules968568 +Node: Internal Name Management970416 +Node: Namespace Example971458 +Node: Namespace And Features974020 +Node: Namespace Summary975455 +Node: Arbitrary Precision Arithmetic976932 +Node: Computer Arithmetic978419 +Ref: table-numeric-ranges982185 +Ref: table-floating-point-ranges982678 +Ref: Computer Arithmetic-Footnote-1983336 +Node: Math Definitions983393 +Ref: table-ieee-formats986369 +Node: MPFR features986936 +Node: FP Math Caution988654 +Ref: FP Math Caution-Footnote-1989726 +Node: Inexactness of computations990095 +Node: Inexact representation991126 +Node: Comparing FP Values992486 +Node: Errors accumulate993727 +Node: Strange values995183 +Ref: Strange values-Footnote-1997771 +Node: Getting Accuracy997876 +Node: Try To Round1000586 +Node: Setting precision1001485 +Ref: table-predefined-precision-strings1002182 +Node: Setting the rounding mode1004012 +Ref: table-gawk-rounding-modes1004386 +Ref: Setting the rounding mode-Footnote-11008317 +Node: Arbitrary Precision Integers1008496 +Ref: Arbitrary Precision Integers-Footnote-11011671 +Node: Checking for MPFR1011820 +Node: POSIX Floating Point Problems1013294 +Ref: POSIX Floating Point Problems-Footnote-11017579 +Node: Floating point summary1017617 +Node: Dynamic Extensions1019807 +Node: Extension Intro1021360 +Node: Plugin License1022626 +Node: Extension Mechanism Outline1023423 +Ref: figure-load-extension1023862 +Ref: figure-register-new-function1025427 +Ref: figure-call-new-function1026519 +Node: Extension API Description1028581 +Node: Extension API Functions Introduction1030294 +Ref: table-api-std-headers1032130 +Node: General Data Types1036379 +Ref: General Data Types-Footnote-11045085 +Node: Memory Allocation Functions1045384 +Ref: Memory Allocation Functions-Footnote-11049885 +Node: Constructor Functions1049984 +Node: API Ownership of MPFR and GMP Values1053637 +Node: Registration Functions1054950 +Node: Extension Functions1055650 +Node: Exit Callback Functions1060972 +Node: Extension Version String1062222 +Node: Input Parsers1062885 +Node: Output Wrappers1075606 +Node: Two-way processors1080118 +Node: Printing Messages1082383 +Ref: Printing Messages-Footnote-11083554 +Node: Updating ERRNO1083707 +Node: Requesting Values1084446 +Ref: table-value-types-returned1085183 +Node: Accessing Parameters1086291 +Node: Symbol Table Access1087528 +Node: Symbol table by name1088040 +Ref: Symbol table by name-Footnote-11091064 +Node: Symbol table by cookie1091192 +Ref: Symbol table by cookie-Footnote-11095377 +Node: Cached values1095441 +Ref: Cached values-Footnote-11098977 +Node: Array Manipulation1099130 +Ref: Array Manipulation-Footnote-11100221 +Node: Array Data Types1100258 +Ref: Array Data Types-Footnote-11102916 +Node: Array Functions1103008 +Node: Flattening Arrays1107506 +Node: Creating Arrays1114482 +Node: Redirection API1119249 +Node: Extension API Variables1122082 +Node: Extension Versioning1122793 +Ref: gawk-api-version1123222 +Node: Extension GMP/MPFR Versioning1124953 +Node: Extension API Informational Variables1126581 +Node: Extension API Boilerplate1127654 +Node: Changes from API V11131628 +Node: Finding Extensions1133200 +Node: Extension Example1133759 +Node: Internal File Description1134557 +Node: Internal File Ops1138637 +Ref: Internal File Ops-Footnote-11149987 +Node: Using Internal File Ops1150127 +Ref: Using Internal File Ops-Footnote-11152510 +Node: Extension Samples1152784 +Node: Extension Sample File Functions1154313 +Node: Extension Sample Fnmatch1161962 +Node: Extension Sample Fork1163449 +Node: Extension Sample Inplace1164667 +Node: Extension Sample Ord1168293 +Node: Extension Sample Readdir1169129 +Ref: table-readdir-file-types1170018 +Node: Extension Sample Revout1171085 +Node: Extension Sample Rev2way1171674 +Node: Extension Sample Read write array1172414 +Node: Extension Sample Readfile1174356 +Node: Extension Sample Time1175451 +Node: Extension Sample API Tests1177203 +Node: gawkextlib1177695 +Node: Extension summary1180613 +Node: Extension Exercises1184315 +Node: Language History1185557 +Node: V7/SVR3.11187213 +Node: SVR41189365 +Node: POSIX1190799 +Node: BTL1192180 +Node: POSIX/GNU1192909 +Node: Feature History1198687 +Node: Common Extensions1215862 +Node: Ranges and Locales1217145 +Ref: Ranges and Locales-Footnote-11221761 +Ref: Ranges and Locales-Footnote-21221788 +Ref: Ranges and Locales-Footnote-31222023 +Node: Contributors1222246 +Node: History summary1228243 +Node: Installation1229623 +Node: Gawk Distribution1230567 +Node: Getting1231051 +Node: Extracting1232014 +Node: Distribution contents1233652 +Node: Unix Installation1240132 +Node: Quick Installation1240814 +Node: Compiling with MPFR1243295 +Node: Shell Startup Files1243987 +Node: Additional Configuration Options1245076 +Node: Configuration Philosophy1247391 +Node: Non-Unix Installation1249760 +Node: PC Installation1250220 +Node: PC Binary Installation1251058 +Node: PC Compiling1251493 +Node: PC Using1252610 +Node: Cygwin1256163 +Node: MSYS1257387 +Node: VMS Installation1257989 +Node: VMS Compilation1258780 +Ref: VMS Compilation-Footnote-11260009 +Node: VMS Dynamic Extensions1260067 +Node: VMS Installation Details1261752 +Node: VMS Running1264005 +Node: VMS GNV1268284 +Node: VMS Old Gawk1269019 +Node: Bugs1269490 +Node: Bug address1270239 +Node: Usenet1273221 +Node: Performance bugs1274230 +Node: Maintainers1277087 +Node: Other Versions1278282 +Node: Installation summary1286147 +Node: Notes1287356 +Node: Compatibility Mode1288150 +Node: Additions1288932 +Node: Accessing The Source1289857 +Node: Adding Code1291294 +Node: New Ports1297513 +Node: Derived Files1301888 +Ref: Derived Files-Footnote-11307548 +Ref: Derived Files-Footnote-21307583 +Ref: Derived Files-Footnote-31308181 +Node: Future Extensions1308295 +Node: Implementation Limitations1308953 +Node: Extension Design1310163 +Node: Old Extension Problems1311307 +Ref: Old Extension Problems-Footnote-11312825 +Node: Extension New Mechanism Goals1312882 +Ref: Extension New Mechanism Goals-Footnote-11316246 +Node: Extension Other Design Decisions1316435 +Node: Extension Future Growth1318548 +Node: Notes summary1319154 +Node: Basic Concepts1320312 +Node: Basic High Level1320993 +Ref: figure-general-flow1321275 +Ref: figure-process-flow1321960 +Ref: Basic High Level-Footnote-11325261 +Node: Basic Data Typing1325446 +Node: Glossary1328774 +Node: Copying1360661 +Node: GNU Free Documentation License1398204 +Node: Index1423324 End Tag Table diff --git a/doc/gawk.texi b/doc/gawk.texi index b053b171..945e7670 100644 --- a/doc/gawk.texi +++ b/doc/gawk.texi @@ -23312,13 +23312,19 @@ function isnumeric(x, f) return 0 @} @} +@c endfile +@end example Please note that leading or trailing white space is disregarded in deciding whether a value is numeric or not, so if it matters to you, you may want to add an additional check for that. -@c endfile -@end example +Traditionally, it has been recommended to check for numeric values using the +test @samp{x+0 == x}. This function is superior in two ways: it will not +report that unassigned variables contain numeric values; and it recognizes +string values with numeric contents. +On the other hand, it uses the @code{typeof()} function +(@pxref{Type Functions}), which is specific to @command{gawk}. @node Data File Management @section @value{DDF} Management diff --git a/doc/gawktexi.in b/doc/gawktexi.in index 0ac35f7a..b64c192a 100644 --- a/doc/gawktexi.in +++ b/doc/gawktexi.in @@ -22224,13 +22224,19 @@ function isnumeric(x, f) return 0 @} @} +@c endfile +@end example Please note that leading or trailing white space is disregarded in deciding whether a value is numeric or not, so if it matters to you, you may want to add an additional check for that. -@c endfile -@end example +Traditionally, it has been recommended to check for numeric values using the +test @samp{x+0 == x}. This function is superior in two ways: it will not +report that unassigned variables contain numeric values; and it recognizes +string values with numeric contents. +On the other hand, it uses the @code{typeof()} function +(@pxref{Type Functions}), which is specific to @command{gawk}. @node Data File Management @section @value{DDF} Management |