C Strings in Structs -


i want struct carry string. defined so:

typedef struct mystruct {   char* stringy } mystruct 

and function

free(char *stringy){    //structobj struct object    structobj->stringy = stringy } 

is correct? have feeling since it's local variable, stringy lost, , pointer point garbage.

sorry, new c.

it garbage if somehow using char** stringy, structobj->stringy = stringy means "you know thing stringy points to? structobj->stringy points that". of course, still possible unset value pointer pointing to, , @ point dereferencing yield garbage.

here's example make clearer:

 #include<stdio.h>  typedef struct mstruct {   char* stringy;  } mystruct;   mystruct * structobj;   void dosomething(char* stringy)  {       structobj->stringy = stringy;  }   int main(int argc, char* argv)  {       char* = "abc\n";       structobj = malloc(sizeof(mystruct));       dosomething(a);       = "qxr\n";       printf(structobj->stringy);  }// prints "abc\n" 

Comments

Popular posts from this blog

html - How to style widget with post count different than without post count -

How to remove text and logo OR add Overflow on Android ActionBar using AppCompat on API 8? -

IIS->Tomcat Redirect: multiple worker with default -