12-04-2007
If this is a copy and paste, I suggest you look at matching your parentheses where they are mismatched, for example:
if (!strcmp ((argv[i]) , "-type"))
10 More Discussions You Might Find Interesting
1. Programming
I have a program which I wish to modify. It used to be run from the command line, but now I wish to change this so it can be used as a function.
The program has complex argument processing so I want to pass my paramters to as if it were being called by the OS as a program.
I have tried to... (2 Replies)
Discussion started by: mbb
2 Replies
2. Programming
I searched on the forums. No advises.
I am using a previous source code. I changed the main function main(int argc, char **argv) in a function misc(int argc, char **argv). How do you use the argc and argv parameters? This is how I am calling the function :
char param;
strcat(param,"wgrib ");... (4 Replies)
Discussion started by: Akeson Chihiro
4 Replies
3. Programming
Is it possible to use the dbx debugger with the CL options for the executable ?
Say you have created a executable called myfunc which can take string arguments at run-time. You run it like this
./myfunc Hello World
where Hello and World are the string arguments
My question is whether... (1 Reply)
Discussion started by: JamesGoh
1 Replies
4. Programming
Hello All,
First post. I've been struggling with the following:
Given a char* string, I need to construct an "int argc, char *argv" style structure. What I'm struggling with most is handling escaped-whitespace and quotes.
e.g. the string:
char *s = "hello world 'my name is simon'... (10 Replies)
Discussion started by: cbarwise
10 Replies
5. Programming
Hi,
Can somehelp help how to list file in a dir? (5 Replies)
Discussion started by: Learnerabc
5 Replies
6. Programming
when i run my program, i have a parameter, that i want to set the value to another string
i am using
int main(int argc, char **argv) {
char my_str=argv;
printf("%s",my_str);
return 0;
}
and i get
Segmentation fault
ran using
./my_prog /usr/share/dict/words hello1
... (2 Replies)
Discussion started by: omega666
2 Replies
7. Shell Programming and Scripting
Hi Folks,
I've prepared a shell script that takes action based on arguments and number of arguments..sample code like:
ARGV=("$@")
ARGC=("$#")
case ${ARGV} in
abc)
if ; then
......
else
printf "\nInvalid number of arguments, please check the inputs and... (2 Replies)
Discussion started by: SBC
2 Replies
8. Shell Programming and Scripting
Hi guys,
i'm trying to solve this problem.
I have to run something like
cat file1.txt | awk -f script.awk 10
if i'm in the awk script, how can i take the parameter :10 ??:wall:
i try something like :
BEGIN{
var=argv
}
{..}
END{..}
but obviously is not correct... (5 Replies)
Discussion started by: heaven25
5 Replies
9. UNIX for Advanced & Expert Users
All of my machines (various open source derivatives on x86 and amd64) store argv above the stack (at a higher memory address). I am curious to learn if any systems store argv below the stack (at a lower memory address).
I am particularly interested in proprietary Unices, such as Solaris, HP-UX,... (9 Replies)
Discussion started by: alister
9 Replies
10. Homework & Coursework Questions
Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted!
1. The problem statement, all variables and given/known data:
First, create a "hello world" program that prints "Hello World". But NOW, instead use argc to verify that a... (9 Replies)
Discussion started by: miniviking10
9 Replies
GETOPT(3) Library Functions Manual GETOPT(3)
NAME
getopt - get option letter from argv
SYNOPSIS
int getopt(argc, argv, optstring)
int argc;
char **argv;
char *optstring;
extern char *optarg;
extern int optind;
DESCRIPTION
Getopt returns the next option letter in argv that matches a letter in optstring. Optstring is a string of recognized option letters; if a
letter is followed by a colon, the option is expected to have an argument that may or may not be separated from it by white space. Optarg
is set to point to the start of the option argument on return from getopt.
Getopt places in optind the argv index of the next argument to be processed. Because optind is external, it is normally initialized to
zero automatically before the first call to getopt.
When all options have been processed (i.e., up to the first non-option argument), getopt returns EOF. The special option -- may be used to
delimit the end of the options; EOF will be returned, and -- will be skipped.
DIAGNOSTICS
Getopt prints an error message on stderr and returns a question mark (?) when it encounters an option letter not included in optstring.
EXAMPLE
The following code fragment shows how one might process the arguments for a command that can take the mutually exclusive options a and b,
and the options f and o, both of which require arguments:
main(argc, argv)
int argc;
char **argv;
{
int c;
extern int optind;
extern char *optarg;
.
.
.
while ((c = getopt(argc, argv, "abf:o:")) != EOF)
switch (c) {
case `a':
if (bflg)
errflg++;
else
aflg++;
break;
case `b':
if (aflg)
errflg++;
else
bproc();
break;
case `f':
ifile = optarg;
break;
case `o':
ofile = optarg;
break;
case `?':
default:
errflg++;
break;
}
if (errflg) {
fprintf(stderr, "Usage: ...");
exit(2);
}
for (; optind < argc; optind++) {
.
.
.
}
.
.
.
}
HISTORY
Written by Henry Spencer, working from a Bell Labs manual page. Modified by Keith Bostic to behave more like the System V version.
BUGS
It is not obvious how `-' standing alone should be treated; this version treats it as a non-option argument, which is not always right.
Option arguments are allowed to begin with `-'; this is reasonable but reduces the amount of error checking possible.
Getopt is quite flexible but the obvious price must be paid: there is much it could do that it doesn't, like checking mutually exclusive
options, checking type of option arguments, etc.
4.3 Berkeley Distribution May 27, 1986 GETOPT(3)