From 4d2785339c25f617685174f0de45ec4e0a782637 Mon Sep 17 00:00:00 2001 From: MarcUs7i Date: Thu, 10 Oct 2024 17:00:19 +0200 Subject: [PATCH] segmentation fault --- pointer_fun_again | Bin 0 -> 18200 bytes pointer_fun_again.c | 45 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 pointer_fun_again create mode 100644 pointer_fun_again.c diff --git a/pointer_fun_again b/pointer_fun_again new file mode 100644 index 0000000000000000000000000000000000000000..4a8898ac65a0b8c2b3f548d8ed2fe786bbb6a116 GIT binary patch literal 18200 zcmeHPeQX@Zb)UWCk|!O-JBn6xlpS$pi?-#MM^T~_S{5Zz)JaQMvJ`!|a#3e>h%p%2%t)iNKxC_*G8Xp2BVn*xOsByCfm2-I3F=-QTIAuZ$pby+ljFhz_|fSoF? zo2oV9>+kK%TkfroZPEfoTik%RZ{El6&D*zgyE}6;d@gZdUqI6Ym!Q}sh&vgTk`bkt zA66BR5iulI;n*uSidOI~j!f!DB!O0z`9M7lDR~f-a51Vhp!Z0zV9F5^CERl5Fa?Cd zRH*YHoK6bG`{}5PgDLCX_6!1}7|zk9KOh4Xrd}L{aHcOb@HPoKTc;#1d{n z;T9CmrK-IJMLD086Z#CP^YBvxIx2>96vB@?p>Te>SJ^YAHmDqZvz+>`w0BtHGKS+u z_~`*D7EHOlj{&DHt+M!!318+Ts=ei|!)BF#rYfzXKbM`@KG>g2_2shp%9*}1L)-hd z55`M{_!g&Oii_HyKDGbx<05cQ%#n=oRKE)!N-OD~`iQ;z#@fv9@7^=;mCqgAvG#`> z=WekN!jKIWvga;AJk{IqAsc!AzmA%e5q;hM>uI9P6~e4;pgaVb(Lhe^G_rqS8Tlt5 zH}LV7ry(%>Lhvzs?rk6!GnH~lSQgSgX_d;!V%eHbX7i9to=I9$*?cmWecBc?#caMj zCCG}d#dfj(!1$gqYfF4fe4AU}Iw-91V+XC2U9{8LQrRvZJ2;jrFGjV zHDXEAhK7`V4Ob+HBT*_EWN}dLUzK&)6?D~xlLMCw`2{M>FSr|U`Ah|9M5)74Jq4Ke$Yp<$iUp6H`kPxuWQ}C%7U2j& z9y#^nW@%=inSo{oni*(jpqYVY2AUc8zmWlR_N|b4UVpV;2=mi(mN6(|6tDk;P&BT ziGjI+*USsUe+)ov&2E^!I~9-ge9AE=|Ik$-H81GDLFAD;xgVJgytmvhGdQ)KQtf+kCxH&s~gWm4V>YL?u^Zf8nz$|XUX)UI3xaPRgo&vTGf9o`q$ALjIqh|Hl zJLdW0hI#&A?0h0RWk&KZRj=WEzT826uV0~5Ex!7Gt!AE2!18cZQWKXUap$~P0$lO} zz68L<*Iss7sXjXo&$Dw{HL>tcB$|l56FD*WPNXxj2p5J~P25J~^QbQ%kVUhqnbnVx z_uFQ5GBJ2cK~%3VZmjbUQ3Xzbn4JSsToYmmH&T7}JJ8QvPb|>6AOihE2vr7f zLI3G0I!{0^p#3VHV&#t0%Vyt-nbq$v6P8*1m&HG&q|Cm8)cvf8w|{QLaTh`9xW0Is z_zU_$88jsgfghhYt8b9j@qa!6_WI&ASYE;Tir47dAUSwV=5XmYsslKlF(@{fMi-40#UvyS@4+9JS;BD&%SCKkU_?SkiwF@)YzdC^y`G zutk#=1ZtLM2AUaYW}umYW(JxWXl9_9fo2Ap8TkL00bXCo>j~9x$yu{V=iAOFtrjri zcQ2<5bxGQ-cwV>Yj7cElG0!@s=k<&CD4zBI{C=%KqTf}E1$ph^^DWYl*BpLZ>3LlF zCFLiqXiU*HiZW3!v8dK7@|s6y>;@wq=kXfGwF+pchFN}61;%mDDLX9YbPBisUQM14 zgpMhG1a!`Cv%=$-Ux(*BV;JV}_bC0pDxTw3?*GRLuOIg}yj}H!eTuT4*PZSk8{1(# zxYwS@CiBL?AlBJ#?%TRa)x^UvmsddMaa^rpeT&n(J@RT`6%4A+(4y$6owvOQr}?KtZx>qh;dV5!IYCBLIPR`Bw>digfG97A^w6N8CeB9G6at z=-0_^P3ybr67d&XyZlvx{vEVyx)oHkMZiY?NSP+UP|+^`2&Vc>Nks3LQG+3FSVnEO zP&}P{MxxUsP`H(^EqSM+T_zvlUaybvPIcx`ZxrG1u5b`*3Ie(acI?=oJsN%_Jl++E zAqf!?-Vhqc-Ku5KuhU^2so5uCu&p3wBdZky@*;oaSe}<2aThd1^#mfp zkCT=T;yIG(qhdvXuT5~Jrt2>T?(fpIz(AM2XP188tRCN~uidF{+o_M8(APeuKjs`) z{(`QBen)?37wmQIMSXCW-f>l5{S93k*6-b=uYFUGh5lC8KNZ;071(kY{`BxwUH^kn zzupe}Cj(ehuaz=|V%eatth2~}GLy`wZLG+rnMaYgPh038hjYoZN2LU7_tTDbl5Dd1 zH17j&wgWJ3$qQLj@}+D#Z>J21iy~P}PYQ`0Am)^qfqO>Ea9jk%HB;9TGfp6NcBw*z z_7q6hTNJg*14l}+}ilI3LoOmU{z zZ=bP?li8A8>fb!rH(e;&eab`MR3$HdKJ$JBwE(q}Y3$O7Pm2CZso0;*Pv$Bq%0?<% zh-av$Emx?gwum3s{Cax+YS28R`mdo3@I7m2zaH{{h=_~6=NI8fKIfBfRdRkm0_&7< z95t~{7$cIW_^8nBRugLkzwbCg9GrU>{JZa4O7Xm7f0w)OgY92HrP28=cU~_#e!9fM z2KKN-8~J(7vHy_pKj**ez*f8atk}z&j(yC1k7D_IsHleviyRt5LX0|zWWM0YyG3-Q zUO5PPBR>g89ufX$%TdUqqT9_sd;2A_4@3pOpR)X<^27Hpezr_Ia<*Ec=ajww@pl1o zYS$nCmmxQn;BM_}kaq^U1-~D$;#(xAPNhKVbyvI!c@+KX!4bBU^ox+MM*lgf`sck$ zeM8xEKV;M!%HIE?@%NBZJbwEhLT)hFL$!cx*Z&3)f&5;N9akSB`v67_zVDGZI$10a z#0%I>m7K_0#ladqtbOQUxoWD@-JFR;pYmmaJsujF>D; z&*bc~or-U6Y(bm9vR1NK#QoaNmy2h`R53YiTdB(Q^jSbWoCV8rooS<6m1XTaGI}s! zB_7{vVf)wKCm$a@I6ekXxLI2XQ)$h;M})Qiz@a^(2dqQ;_8m(9ThL$zb}~vbKb)DTb9xD+>7V;38n@cD(c7oBIG~8*q!6&`3$Dq zeyhS`d{9@C;4s{9&!6Wzn9eC{iji{1cp5EG$>Kw=K-@mhpD^Y560)V@&;KVOqqzyj z^LzwTzMXUYY{!&_sx;TZJkNKylp00x$1kNqTtJ0#%6Oh{VLGP_xqbin|CYk3Vn zOb`3{j8&u8-g0r1;1&vX$OngrotG{67P z_mQ`y{wBF4p7HNOL4A+${9f+m(+D2aPyJky^- zLrpNA=SvrVMtm#4UOc}aM>oqRIZh6M+hx8TV3KkB#)#Ay3h%e4w!EcNwXe)w72|2# z=Pit9x=!J}HdNoG9Qyq-j_o%sgU>5qFL!JO@Z)JV&o3j>FK&^5UZ2v(im_$zS7-o> z@)wf0M?e0M!u!wj)S!f%^Z}S$M7UQ*iq(H$G8vm s)%b9K;O8IRpSbU!>XxA$vdaIjgB9E^^E7qY2%p(0Eq=uZ@Ui0G0iWtbbpQYW literal 0 HcmV?d00001 diff --git a/pointer_fun_again.c b/pointer_fun_again.c new file mode 100644 index 0000000..8796a1e --- /dev/null +++ b/pointer_fun_again.c @@ -0,0 +1,45 @@ +#include +#include +#include + +struct PlayStruct { + int int_value; + double double_value; + char* a_string; +}; + +void print_struct(struct PlayStruct ps, struct PlayStruct* pps) { + printf("Values of struct ps: %d, %lf, %s\n", ps.int_value, ps.double_value, ps.a_string); + printf("Values of struct pps: %d, %lf, %s\n", pps->int_value, pps->double_value, pps->a_string); +} + +void change_struct(struct PlayStruct ps, struct PlayStruct* pps) { + struct PlayStruct new_ps = {ps.int_value + 1, ps.double_value * 2, ps.a_string}; + *pps = new_ps; +} + +void print_string(char* string_to_print) { + printf("%s\n", string_to_print); +} + +void change_string(char* string1, char** p_string) { + string1[2] = '\0'; + *p_string[1] = '\0'; +} + +int main(int argc, char* argv[]) { + struct PlayStruct play_struct = {1, 2.0, "3456"}; + struct PlayStruct* play_struct_pointer = &play_struct; + + print_struct(play_struct, play_struct_pointer); + change_struct(play_struct, play_struct_pointer); + //first value gets incremented by 1 & second value gets multiplied by 2 & the string wont be changed + print_struct(play_struct, play_struct_pointer); + + print_string(play_struct.a_string); + + char* string2 = "Test"; + change_string(play_struct.a_string, &string2); + print_string(string2); + return 0; +} \ No newline at end of file