Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #58795

Re: strange problem

From Keith Thompson <kst-u@mib.org>
Newsgroups comp.lang.c
Subject Re: strange problem
Date 2015-03-23 15:23 -0700
Organization None to speak of
Message-ID <87vbhrs68q.fsf@kst-u.example.com> (permalink)
References <mensmn$rrs$1@dont-email.me> <menvoi$t61$1@dont-email.me> <meoivf$rrs$2@dont-email.me> <meol0s$r1n$2@dont-email.me> <meq04j$be9$1@dont-email.me>

Show all headers | View raw


bilsch <king621@comcast.net> writes:
> Here's the whole program.  It uses SDL2 library for graphics.

Is this the program that works, or the program that doesn't work?

After deleting the "#include <iostream>" and re-joining some comment
lines that were wrapped by somebody's news software, I was able to
compile it.

Incidentally, if you were able to compile that program with the
"#include <iostream>" line, then you were probably using a C++ compiler.
I suggest using a C compiler to compile C code.  You might be able to
persuade your compiler to act as a C compiler with the right setting.

Removing the code that's not relevant to your question leaves us with:

#include <stdio.h>
int main(int argc, char *argv[]) {
    if (argv[1] == NULL) {
        puts("argv[1] == NULL, use default values");
    }
    else {
        puts("argv[1] != NULL, get values from argv");
    }
}

This works correctly for me: when I run it with no command line
arguments, it prints the first message, and when I run it with one or
more arguments it prints the second.

This version also works correctly (and I personally find it clearer):

#include <stdio.h>
int main(int argc, char *argv[]) {
    if (argc < 2) {
        puts("argc < 2, use default values");
    }
    else {
        puts("argc >= 2, get values from argv");
    }
}

Remember that argc is the number of valid elements in the array that
argv points to (more precisely, argv points to its first element).
argv[0] is the command name, so if there are no arguments you'll
normally have argc==1, argv[0] pointing to a string representing the
command name, and argv[1]==NULL.  It is admittedly a little confusing
that the value of argc is one greater than the number of command-line
arguments; just remember that the count includes the program name.

Now what exactly is the problem you're having with the code you've
posted?  How are you invoking your program, and how does it behave?
(You might also try one of the smaller programs I've posted here.)

If you're on Windows, spaces either in the name of the executable, or in
the name of a directory in the path you're using, or in the arguments
you're passing to it might be an issue.  Adding double quotes on the
command line might work around that.  (If that's the issue, a
Windows-specific forum might be more helpful.)

Recommended reading: http://sscce.org/

-- 
Keith Thompson (The_Other_Keith) kst-u@mib.org  <http://www.ghoti.net/~kst>
Working, but not speaking, for JetHead Development, Inc.
"We must do something.  This is something.  Therefore, we must do this."
    -- Antony Jay and Jonathan Lynn, "Yes Minister"

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

strange problem bilsch <king621@comcast.net> - 2015-03-23 02:10 +0000
  Re: strange problem Richard Heathfield <rjh@cpax.org.uk> - 2015-03-23 03:03 +0000
    Re: strange problem Keith Thompson <kst-u@mib.org> - 2015-03-22 22:09 -0700
      Re: strange problem Richard Heathfield <rjh@cpax.org.uk> - 2015-03-23 09:04 +0000
    Re: strange problem bilsch <king621@comcast.net> - 2015-03-23 08:30 +0000
      Re: strange problem Richard Heathfield <rjh@cpax.org.uk> - 2015-03-23 09:06 +0000
        Re: strange problem bilsch <king621@comcast.net> - 2015-03-23 21:21 +0000
          Re: strange problem Richard Heathfield <rjh@cpax.org.uk> - 2015-03-23 21:42 +0000
            Re: strange problem bilsch <king621@comcast.net> - 2015-03-23 22:35 +0000
            Re: strange problem Tim Rentsch <txr@alumni.caltech.edu> - 2015-03-24 12:20 -0700
          Re: strange problem Keith Thompson <kst-u@mib.org> - 2015-03-23 15:23 -0700
            Re: strange problem Richard Heathfield <rjh@cpax.org.uk> - 2015-03-23 23:14 +0000
              Re: strange problem Keith Thompson <kst-u@mib.org> - 2015-03-23 17:10 -0700
  Re: strange problem glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-03-23 03:03 +0000
    Re: strange problem bilsch <king621@comcast.net> - 2015-03-23 08:37 +0000
      Re: strange problem raltbos@xs4all.nl (Richard Bos) - 2015-03-23 09:37 +0000
        Re: strange problem bilsch <king621@comcast.net> - 2015-03-23 21:27 +0000
          Re: strange problem Richard Heathfield <rjh@cpax.org.uk> - 2015-03-23 21:43 +0000
            Re: strange problem bilsch <king621@comcast.net> - 2015-03-23 22:36 +0000
              Re: strange problem Keith Thompson <kst-u@mib.org> - 2015-03-23 17:09 -0700
      Re: strange problem JohnF <john@please.see.sig.for.email.com> - 2015-03-23 13:02 +0000
        Re: strange problem Richard Heathfield <rjh@cpax.org.uk> - 2015-03-23 13:10 +0000
          Re: strange problem Robert Wessel <robertwessel2@yahoo.com> - 2015-03-23 19:18 -0500
            Re: strange problem Richard Heathfield <rjh@cpax.org.uk> - 2015-03-24 00:28 +0000
              Re: strange problem Robert Wessel <robertwessel2@yahoo.com> - 2015-03-23 19:38 -0500
              Re: strange problem jt@toerring.de (Jens Thoms Toerring) - 2015-03-24 01:12 +0000
        Re: strange problem Keith Thompson <kst-u@mib.org> - 2015-03-23 08:10 -0700
        Re: strange problem Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2015-03-23 11:28 -0400
          Re: strange problem bilsch <king621@comcast.net> - 2015-03-23 21:47 +0000
            Re: strange problem Kaz Kylheku <kaz@kylheku.com> - 2015-03-23 21:53 +0000
            Re: strange problem Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2015-03-23 18:34 -0400
              Re: strange problem James Kuyper <jameskuyper@verizon.net> - 2015-03-23 18:58 -0400
    Re: strange problem raltbos@xs4all.nl (Richard Bos) - 2015-03-23 09:54 +0000
  Re: strange problem Kaz Kylheku <kaz@kylheku.com> - 2015-03-23 21:47 +0000

csiph-web