Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 923027
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 15, 20262026-05-15T19:07:41+00:00 2026-05-15T19:07:41+00:00

I have a pointer to a struct. I call a routine that determines whether

  • 0

I have a pointer to a struct. I call a routine that determines whether I need this struct and allocates space for it using malloc, returning the pointer to that area or zero if unused.

struct node *node_p;
node_p = need_this();

This works and I can properly access all the elements of the struct. One of the elements of struct node is *next which points to the next node struct and a pointer to a string but it’s returning a pointer to a string that doesn’t even exist in this routine.

node_p=find_string(node_p->next,"string");

However, this does return a pointer in the struct to the correct string.

struct node *node_p, *node_copy;
node_copy=find_string(node_p->next,"string");

The only difference is using a second pointer instead of the original. Am I doing something wrong here or must it be deeper into the called function? The problem with blaming the called function is I use it in multiple places for months without issue, however the other calls only look for the string and never go to ‘next’.

EDIT: Further debugging has shown the problem actually lies with the pointer being passed to find_string and not the returned pointer. That changes the question and the problem so I need to open another question.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-15T19:07:42+00:00Added an answer on May 15, 2026 at 7:07 pm

    In this snippet:

    struct node *node_p, *node_copy;
    node_copy=find_string(node_p->next,"string");
    

    you dereference node_p when it is not yet initialized (doesn’t point to a legally allocated memory block). That’s undefined behavior. You should set node_p to a legally allocated memory block of appropriate size first.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a pointer to a map that I am trying to delete (this
I have a function pointer inside a struct that gets dynamically set at runtime
I have a C struct that contains a function pointer. Now, I have used
I have this code that defines struct (incoming is simple struct) #define FUNCS_ARRAY 3
I have the following code: template <class T> struct pointer { operator pointer<const T>()
I have a structure: struct mystruct { int* pointer; }; structure mystruct* struct_inst; Now
I have a struct as follows, with a pointer to a function called length
I have to allocate a struct from within another function, obviously using pointers. I've
I have a pointer to integer array of 10. What should dereferencing this pointer
I have a pointer to a QScriptEngine that I'm passing through the overloaded class

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.