Thread: Passing arguments to function...

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Registered User
    Join Date
    Mar 2002
    Posts
    1,595
    #1) place a cout << fname << endl; after the line fname = argv[1]; to be sure you have valid information in fname.

    #2) you need to declare an ifstream object in order to associate with a file using the () operator, say maybe.

    ifstream fin(file)

    rather than

    ifstream(file);

    then be sure fin opened file before trying to use it.

  2. #2
    Registered User
    Join Date
    Sep 2004
    Posts
    124
    ok i'm sorry about that ive changed the original post...that is how i've done it in my original code...ok 2 things...

    1) does argv[1] indicate the first or second argument to main...i mean when i run my program (astar) i want to write:

    astar inputfile

    where it is understood that inputfile is the name of the file...so is that argv[0] or argv[1]...i tried argv[0] and i get a segmentation error...argv[1] doesn't work as it hangs...

    2) if i hardcode the filename it always works...e.g. if i write:

    Code:
    ifstream fin ("inputfile.txt");
    this always works...i just don't want to hardcode the name of the file...

    Regards,

    Farooq

  3. #3
    Registered User
    Join Date
    Mar 2002
    Posts
    1,595
    argv[1] should be inputfile in your example. check it out by running the program with the command line arguments you have listed. comment out the call to readfile() and put a cout << argv[1] << endl; in the program to prove it. Put in a cout << fname << endl; after you assign argv[1] to fname to be sure you have the same information int fname.

  4. #4
    Registered User hk_mp5kpdw's Avatar
    Join Date
    Jan 2002
    Location
    Northern Virginia/Washington DC Metropolitan Area
    Posts
    3,817
    You'll need to type in astar inputfile.txt and not astar inputfile when you run the program if you want to mimic that hardcoded ifstream fin("inputfile.txt"); piece of code.
    "Owners of dogs will have noticed that, if you provide them with food and water and shelter and affection, they will think you are god. Whereas owners of cats are compelled to realize that, if you provide them with food and water and shelter and affection, they draw the conclusion that they are gods."
    -Christopher Hitchens

  5. #5
    Registered User
    Join Date
    Sep 2004
    Posts
    124
    ya it works when i use:

    astar inputfile.txt

    is there someway where i can just make it: astar inputfile

    i really don't know if it will be a text file or what...in fact the assignment question just says it will be run as:

    astar inputfile

    Regards,

    Farooq

  6. #6
    Registered User
    Join Date
    Mar 2002
    Posts
    1,595
    you could provide code to append the .txt string on to argv[1].

    you could ask user to enter extension type of the file and append it to the end of argv[1].

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Beginner Needs help in Dev-C++
    By Korrupt Lawz in forum C++ Programming
    Replies: 20
    Last Post: 09-28-2010, 01:17 AM
  2. Getting an error with OpenGL: collect2: ld returned 1 exit status
    By Lorgon Jortle in forum C++ Programming
    Replies: 6
    Last Post: 05-08-2009, 08:18 PM
  3. In over my head
    By Shelnutt2 in forum C Programming
    Replies: 1
    Last Post: 07-08-2008, 06:54 PM
  4. Passing arguments to another function
    By Wiretron in forum C Programming
    Replies: 2
    Last Post: 12-24-2006, 05:57 AM
  5. passing counters between function
    By BungleSpice in forum C Programming
    Replies: 18
    Last Post: 02-21-2004, 06:16 PM