Sponsored Content
Top Forums UNIX for Advanced & Expert Users O argv, argv, wherefore art thou argv? Post 302804657 by Don Cragun on Thursday 9th of May 2013 04:20:13 AM
Old 05-09-2013
I have a vague recollection of the address space layout shifting a few times with changes in CPU architectures. First there was the IBM 360 architecture, then the 16-bit address space PDP-11, then the 17-bit address space PDP-11, then the VAX, then the 3B20, 3B2, 3B5, M68K, SPARC, PA RISC, etc., and the segmented address space of the various x86 and similar processors. The people that did the ports to each new architecture decided at that time where code, text, heap, and stack would be placed for that architecture. For various reasons, they were not all in the same order. But, once an order was chosen for a particular processor type, ABI considerations tended to use the same layout for all systems based on that architecture. (Some companies (e.g., Intel) caused some unnecessary incompatibilities by not letting various contractors working on different OSes for the same architecture talk to each other and giving different answers to trivial questions like whether some numbers were presented in decimal or octal in tables that Intel created and then shared with the contractors.)
These 3 Users Gave Thanks to Don Cragun For This Post:
 

10 More Discussions You Might Find Interesting

1. Programming

argv

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

Using argv argc

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

help for argv argc

Hi C experts, I have the following code for adding command line option for a program int main (argc, argv) int argc; char *argv; { char *mem_type; //memory type char *name; //name of the memory int addr; //address bits int data; ... (5 Replies)
Discussion started by: return_user
5 Replies

4. Shell Programming and Scripting

if #argv = (this OR that) then...

this is in one of my scripts... if ($#argv == 0) then echo 'blah bla' exit 0 endif I want it to be something like this... if ($#argv == 0 OR $argv >=3) echo 'blah bla' exit 0 endif so when the arguments are none, or greater than three I want this "if then" to take over. how? I... (5 Replies)
Discussion started by: ajp7701
5 Replies

5. Shell Programming and Scripting

$#Argv in Csh

Hello all, Had a quick question: In a typical csh script should inputting via stdin (i.e. set i = $< ) increase the value of $#argv ? echo enter an value: set val= "$<" if($#argv == 0) then echo No args else echo The arg is $argv so if a value is inputted #argv... (1 Reply)
Discussion started by: new2C
1 Replies

6. Programming

ARGV help in C

Hi, Can somehelp help how to list file in a dir? (5 Replies)
Discussion started by: Learnerabc
5 Replies

7. Programming

help with C, argv

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

8. Programming

How do I copy or rewind *argv[]

I'm working on my own pow function and I need to make a copy of *argv but I think that I am having trouble with the size of *argv and the size of any array that I make. The code below isn't working for me. and I want to accept any number no matter the size with pow -f 2 2. I was working out... (16 Replies)
Discussion started by: Errigour
16 Replies

9. Homework & Coursework Questions

Help using argc/argv in assignment

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

10. UNIX for Dummies Questions & Answers

ARGV how to use it?

So i am trying to read in file readFile <GivenFile> modFile looking for a regular file under the directories in the GivenFile and print them out is my over all goal. basically I am looking for anything that looks like a directory in the given file and printing it out. Since I am trying to do... (2 Replies)
Discussion started by: squidGreen
2 Replies
DtDtsDataTypeToAttributeValue(library call)							       DtDtsDataTypeToAttributeValue(library call)

NAME
DtDtsDataTypeToAttributeValue -- get an attribute value for a specified data type SYNOPSIS
#include <Dt/Dts.h> char *DtDtsDataTypeToAttributeValue( const char *datatype, const char *attr_name, const char *opt_name); DESCRIPTION
The DtDtsDataTypeToAttributeValue returns an attribute value for the specified data type name. The datatype argument is a pointer to a data type name string. The attr_name argument is a name of the attribute. The opt_name argument can be used to specify a name to be associated with the data type. If the opt_name argument is not NULL, it is used as a pseudo file name in typing; otherwise, certain attributes may be returned as NULL because the filename components could not be deter- mined. RETURN VALUE
Upon successful completion, the DtDtsDataTypeToAttributeValue function returns a pointer to a data attribute value string, or NULL if no value could be determined. APPLICATION USAGE
The application should use the DtDtsFreeAttributeValue(3) function to release the memory for the returned value. The opt_name argument is useful when the attribute being returned contains a modifier string that depends on having a file name included. For example, if the INSTANCE_ICON attribute had the value %name%.icon, opt_name would be used to derive the %name% portion of the attribute value. See dtdtsfile(4). EXAMPLES
The following takes a list of files as arguments and determines the description and actions for each file: #include <Dt/Dts.h> #define ATTRIBUTE1 "DESCRIPTION" #define ATTRIBUTE2 "ACTIONS" main (int argc, char **argv) { char *attribute; char *datatype; /* load data types database */ DtDtsLoadDataTypes(); argv++; while (*argv) { /* get data type file file */ datatype = DtDtsFileToDataType(*argv); /* get first attribute for datatype */ attribute = DtDtsDataTypeToAttributeValue(datatype, ATTRIBUTE1, *argv); if (attribute) printf("%s for file %s is %s ", ATTRIBUTE1, *argv, attribute); /* get second attribute for datatype */ attribute = DtDtsDataTypeToAttributeValue(datatype, ATTRIBUTE2, NULL); if (attribute) printf("%s for file %s is %s ", ATTRIBUTE2, *argv, attribute); argv++; } DtDtsRelease(); exit(0); } SEE ALSO
Dt/Dts.h, DtDtsFileToDataType(3), DtDtsLoadDataTypes(3), DtDtsRelease(3), DtDtsFreeAttributeValue(3). DtDtsDataTypeToAttributeValue(library call)
All times are GMT -4. The time now is 02:32 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy