Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
| 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> |
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
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