The arguments passed to the main() function are stored in an array of chars with a zero terminating char (char *). Your Get() function is expecting a reference to a std::string (and that's how it will interpret what you pass to it).
The problem is that a std::string is not an array of chars (char *). You need to deal with it by copying the char * string into a std::string before calling Get(), or changing Get() so that it expects a zero-terminated string - it's your choice. "Kelly Mandrake" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > I have a situation where I cannot enter into a function. The code I am > trying to debug comes from example code of a C++ socket library. When > I debug with gdb tutorials on the net they work fine, i can step into > methods and functions, but with this code for some reason it will not > work. > > Instead when I get to the if condition (!Get(argv[i])) and issue step, > it jumps to basicstring.h:491 from this point it does not mater weather > i issue next, step or continue, I cannot get into the Get function so > that I can debug it > > #include <HttpGetSocket.h> > #include <HttpsGetSocket.h> > #include <SocketHandler.h> > #include <Parse.h> > > > bool Get(const std::string& url_in) > { > // This is where i want to go > } > > int main(int argc,char *argv[]) > { > for (int i = 1; i < argc; i++) > { > if (!Get(argv[i])) > { > printf("Failed: %s\n",argv[i]); > } > } > } > > The breakpoint is set on the for loop, I issued next untill I reach the > if statment, at wich point I issue step and land inside basickstring.h > instead of Get > > Can somebody give me some guidence, would be apreciated. > _______________________________________________ help-gnu-utils mailing list [email protected] http://lists.gnu.org/mailman/listinfo/help-gnu-utils
