Re: Command Languages Versus Programming Languages

Liste des GroupesRevenir à cl misc 
Sujet : Re: Command Languages Versus Programming Languages
De : cross (at) *nospam* spitfire.i.gajendra.net (Dan Cross)
Groupes : comp.unix.shell comp.unix.programmer comp.lang.misc
Date : 22. Nov 2024, 19:12:34
Autres entêtes
Organisation : PANIX Public Access Internet and UNIX, NYC
Message-ID : <vhqhii$d5e$1@reader2.panix.com>
References : 1 2 3 4
User-Agent : trn 4.0-test77 (Sep 1, 2010)
In article <87o727rwga.fsf@doppelsaurus.mobileactivedefense.com>,
Rainer Weikusat  <rweikusat@talktalk.net> wrote:
Something which would match [0-9]+ in its first argument (if any) would
be:
>
#include "string.h"
#include "stdlib.h"
>
int main(int argc, char **argv)
{
   char *p;
   unsigned c;
>
   p = argv[1];
   if (!p) exit(1);
   while (c = *p, c && c - '0' > 10) ++p;
   if (!c) exit(1);
   return 0;
}
>
but that's 14 lines of text, 13 of which have absolutely no relation to
the problem of recognizing a digit.
>
This is wrong in many ways.  Did you actually test that program?
>
First of all, why `"string.h"` and not `<string.h>`?  Ok, that's
not technically an error, but it's certainly unconventional, and
raises questions that are ultimately a distraction.
>
Such as your paragraph above.
>
Second, suppose that `argc==0` (yes, this can happen under
POSIX).
>
It can happen in case of some piece of functionally hostile software
intentionally creating such a situation. Tangential, irrelevant
point. If you break it, you get to keep the parts.
>
Third, the loop: why `> 10`? Don't you mean `< 10`?  You are
trying to match digits, not non-digits.
>
Mistake I made. The opposite of < 10 is > 9.

I see.  So you want to skip non-digits and exit the first time
you see a digit.  Ok, fair enough, though that program has
already been written, and is called `grep`.

Fourth, you exit with failure (`exit(1)`) if `!p` *and* if `!c`
at the end, but `!c` there means you've reached the end of the
string; which should be success.
>
Mistake you made: [0-9]+ matches if there's at least one digit in the
string. That's why the loop terminates once one was found. In this case,
c cannot be 0.

Ah, you are trying to match `[0-9]` (though you're calling it
`[0-9]+`).  Yeah, your program was not at all equivalent to one
I wrote, though this is what you posted in response to mine, so
I assumed you were trying to emulate that behavior (matching
`^[0-9]+$`).

But I see above that you mentioned `[0-9]+`.  But as I mentioned
above, really you're just matching any digit, so you may as well
be matching `[0-9]`; again, this not the same as the actual
regexp, because you are ignoring the semantics of what regular
expressions actually describe.

In any event, this seems simpler than what you posted:

#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>

int
main(int argc, char *argv[])
{
        if (argc != 2) {
                fprintf(stderr, "Usage: matchd <str>\n");
                return EXIT_FAILURE;
        }

        for (const char *p = argv[1]; *p != '\0'; p++)
                if ('0' <= *p && *p <= '9')
                        return EXIT_SUCCESS;

        return EXIT_FAILURE;
}

- Dan C.


Date Sujet#  Auteur
30 Sep 24 * Re: Command Languages Versus Programming Languages169Bozo User
30 Sep 24 +* Re: Command Languages Versus Programming Languages5Lawrence D'Oliveiro
1 Oct 24 i`* Re: Command Languages Versus Programming Languages4usuario
2 Oct 24 i `* Re: Command Languages Versus Programming Languages3Muttley
2 Oct 24 i  `* Re: Command Languages Versus Programming Languages2usuario
2 Oct 24 i   `- Re: Command Languages Versus Programming Languages1Muttley
9 Oct 24 `* Re: Command Languages Versus Programming Languages163Rainer Weikusat
10 Oct 24  `* Re: Command Languages Versus Programming Languages162Muttley
10 Oct 24   +* Re: Command Languages Versus Programming Languages80Rainer Weikusat
10 Oct 24   i+* Re: Command Languages Versus Programming Languages69Muttley
10 Oct 24   ii+* Re: Command Languages Versus Programming Languages67Rainer Weikusat
10 Oct 24   iii+* Re: Command Languages Versus Programming Languages62Kaz Kylheku
10 Oct 24   iiii`* Re: Command Languages Versus Programming Languages61Rainer Weikusat
11 Oct 24   iiii `* Re: Command Languages Versus Programming Languages60Bart
11 Oct 24   iiii  `* Re: Command Languages Versus Programming Languages59Rainer Weikusat
11 Oct 24   iiii   `* Re: Command Languages Versus Programming Languages58Muttley
11 Oct 24   iiii    +* Re: Command Languages Versus Programming Languages45Dan Cross
11 Oct 24   iiii    i`* Re: Command Languages Versus Programming Languages44Muttley
11 Oct 24   iiii    i +* Re: Command Languages Versus Programming Languages40Dan Cross
12 Oct 24   iiii    i i`* Re: Command Languages Versus Programming Languages39Muttley
12 Oct 24   iiii    i i `* Re: Command Languages Versus Programming Languages38Dan Cross
12 Oct 24   iiii    i i  `* Re: Command Languages Versus Programming Languages37Muttley
12 Oct 24   iiii    i i   +- Re: Command Languages Versus Programming Languages1Muttley
12 Oct 24   iiii    i i   `* Re: Command Languages Versus Programming Languages35Dan Cross
13 Oct 24   iiii    i i    `* Re: Command Languages Versus Programming Languages34Muttley
13 Oct 24   iiii    i i     `* Re: Command Languages Versus Programming Languages33Dan Cross
13 Oct 24   iiii    i i      +* Re: Command Languages Versus Programming Languages27Muttley
13 Oct 24   iiii    i i      i+- Re: Command Languages Versus Programming Languages1Janis Papanagnou
13 Oct 24   iiii    i i      i+* Re: Command Languages Versus Programming Languages24Dan Cross
13 Oct 24   iiii    i i      ii`* Re: Command Languages Versus Programming Languages23Muttley
13 Oct 24   iiii    i i      ii +* Re: Command Languages Versus Programming Languages12Janis Papanagnou
13 Oct 24   iiii    i i      ii i+* Re: Command Languages Versus Programming Languages4Lawrence D'Oliveiro
14 Oct 24   iiii    i i      ii ii`* Re: Command Languages Versus Programming Languages3Janis Papanagnou
14 Oct 24   iiii    i i      ii ii `* Re: Command Languages Versus Programming Languages2Lawrence D'Oliveiro
14 Oct 24   iiii    i i      ii ii  `- Re: Command Languages Versus Programming Languages1Janis Papanagnou
14 Oct 24   iiii    i i      ii i`* Re: Command Languages Versus Programming Languages7Muttley
14 Oct 24   iiii    i i      ii i +- Re: Command Languages Versus Programming Languages1Janis Papanagnou
14 Oct 24   iiii    i i      ii i +- Re: Command Languages Versus Programming Languages1Muttley
14 Oct 24   iiii    i i      ii i +* Re: Command Languages Versus Programming Languages3Bart
15 Oct 24   iiii    i i      ii i i+- Re: Command Languages Versus Programming Languages1David Brown
15 Oct 24   iiii    i i      ii i i`- Re: Command Languages Versus Programming Languages1Dan Cross
14 Oct 24   iiii    i i      ii i `- Re: Command Languages Versus Programming Languages1Lawrence D'Oliveiro
13 Oct 24   iiii    i i      ii +* Re: Command Languages Versus Programming Languages9Dan Cross
14 Oct 24   iiii    i i      ii i`* Re: Command Languages Versus Programming Languages8Muttley
14 Oct 24   iiii    i i      ii i `* Re: Command Languages Versus Programming Languages7Dan Cross
14 Oct 24   iiii    i i      ii i  +* Re: Command Languages Versus Programming Languages5Muttley
14 Oct 24   iiii    i i      ii i  i+* Re: Command Languages Versus Programming Languages2David Brown
14 Oct 24   iiii    i i      ii i  ii`- Re: Command Languages Versus Programming Languages1Janis Papanagnou
14 Oct 24   iiii    i i      ii i  i+- Re: Command Languages Versus Programming Languages1Janis Papanagnou
14 Oct 24   iiii    i i      ii i  i`- Re: Command Languages Versus Programming Languages1Dan Cross
14 Oct 24   iiii    i i      ii i  `- Re: Command Languages Versus Programming Languages1Stefan Ram
13 Oct 24   iiii    i i      ii `- Re: Command Languages Versus Programming Languages1Lawrence D'Oliveiro
13 Oct 24   iiii    i i      i`- Re: Command Languages Versus Programming Languages1Lawrence D'Oliveiro
13 Oct 24   iiii    i i      `* Re: Command Languages Versus Programming Languages5Dan Cross
13 Oct 24   iiii    i i       `* Re: Command Languages Versus Programming Languages4Bart
13 Oct 24   iiii    i i        `* Re: Command Languages Versus Programming Languages3Dan Cross
14 Oct 24   iiii    i i         `* Re: Command Languages Versus Programming Languages2Bart
14 Oct 24   iiii    i i          `- Re: On overly rigid definitions (was Re: Command Languages Versus Programming Languages)1Dan Cross
13 Oct 24   iiii    i `* Re: Command Languages Versus Programming Languages3Kaz Kylheku
13 Oct 24   iiii    i  +- Re: Command Languages Versus Programming Languages1Bart
13 Oct 24   iiii    i  `- Re: Command Languages Versus Programming Languages1Dan Cross
11 Oct 24   iiii    +* Re: Command Languages Versus Programming Languages2Rainer Weikusat
12 Oct 24   iiii    i`- Re: Command Languages Versus Programming Languages1Muttley
11 Oct 24   iiii    `* Re: Command Languages Versus Programming Languages10Lawrence D'Oliveiro
12 Oct 24   iiii     `* Re: Command Languages Versus Programming Languages9Muttley
12 Oct 24   iiii      +* Re: Command Languages Versus Programming Languages5Rainer Weikusat
12 Oct 24   iiii      i+* Re: Command Languages Versus Programming Languages3Christian Weisgerber
13 Oct 24   iiii      ii+- Re: Command Languages Versus Programming Languages1Muttley
13 Oct 24   iiii      ii`- Re: Command Languages Versus Programming Languages1Rainer Weikusat
12 Oct 24   iiii      i`- Re: Command Languages Versus Programming Languages1Bart
12 Oct 24   iiii      `* Re: Command Languages Versus Programming Languages3Lawrence D'Oliveiro
13 Oct 24   iiii       `* Re: Command Languages Versus Programming Languages2Muttley
13 Oct 24   iiii        `- Re: Command Languages Versus Programming Languages1Lawrence D'Oliveiro
11 Oct 24   iii+* Re: Command Languages Versus Programming Languages2Bart
11 Oct 24   iiii`- Re: Command Languages Versus Programming Languages1Rainer Weikusat
11 Oct 24   iii`* Re: Command Languages Versus Programming Languages2Muttley
11 Oct 24   iii `- Re: Command Languages Versus Programming Languages1Rainer Weikusat
11 Oct 24   ii`- Re: Command Languages Versus Programming Languages1Lawrence D'Oliveiro
12 Oct 24   i`* Re: Command Languages Versus Programming Languages10Eric Pozharski
13 Oct 24   i `* Re: Command Languages Versus Programming Languages9Muttley
13 Oct 24   i  +- Re: Command Languages Versus Programming Languages1Janis Papanagnou
13 Oct 24   i  +* Re: Command Languages Versus Programming Languages6Rainer Weikusat
14 Oct 24   i  i`* Re: Command Languages Versus Programming Languages5Muttley
14 Oct 24   i  i `* Re: Command Languages Versus Programming Languages4Rainer Weikusat
14 Oct 24   i  i  `* Re: Command Languages Versus Programming Languages3Muttley
14 Oct 24   i  i   `* Re: Command Languages Versus Programming Languages2Rainer Weikusat
14 Oct 24   i  i    `- Re: Command Languages Versus Programming Languages1Muttley
13 Oct 24   i  `- Re: Command Languages Versus Programming Languages1Lawrence D'Oliveiro
11 Nov 24   `* Re: Command Languages Versus Programming Languages81Sebastian
11 Nov 24    +* Re: Command Languages Versus Programming Languages14Muttley
11 Nov 24    i+* Re: Command Languages Versus Programming Languages2Wolfgang Agnes
11 Nov 24    ii`- Re: Command Languages Versus Programming Languages1Muttley
11 Nov 24    i+- Re: Command Languages Versus Programming Languages1Lawrence D'Oliveiro
12 Nov 24    i`* Re: Command Languages Versus Programming Languages10Janis Papanagnou
12 Nov 24    i `* Re: Command Languages Versus Programming Languages9Muttley
12 Nov 24    i  +* Re: Command Languages Versus Programming Languages7Janis Papanagnou
12 Nov 24    i  i`* Re: Command Languages Versus Programming Languages6Muttley
12 Nov 24    i  i `* Re: Command Languages Versus Programming Languages5Janis Papanagnou
12 Nov 24    i  i  +* Re: Command Languages Versus Programming Languages3Bart
12 Nov 24    i  i  i`* Re: Command Languages Versus Programming Languages2Lawrence D'Oliveiro
12 Nov 24    i  i  i `- Re: Command Languages Versus Programming Languages1Bart
12 Nov 24    i  i  `- Re: Command Languages Versus Programming Languages1Muttley
12 Nov 24    i  `- Re: Command Languages Versus Programming Languages1Wolfgang Agnes
11 Nov 24    `* Re: Command Languages Versus Programming Languages66Lawrence D'Oliveiro

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal