理解指针以及如何将它们与函数一起使用时遇到很多麻烦。尝试编写一个函数,它接受任意大小的字符数组并将其保存在struct.This是我尝试过但得到seg错误。
select project0_.ID as col_0_0_, . as col_1_0_ from PROJECT project0_ inner join LOCATION location1_ on project0_.ID=location1_.ID_PROJECT
答案 0 :(得分:5)
问题是,在createNewPassword()
函数中,参数password
为NULL。您实际上是取消引用NULL指针。它调用undefined behaviour。
在使用之前,您需要将内存分配给password
。
也就是说,您已将password
直接传递给createNewPassword()
。您无法在该函数内为password
分配内存,并希望将其反映到main()
,因为C
使用按值传递。如果要从main()
分配内存,请从password
本身分配内存,或将指针传递给createNewPassword()
。
然后,sizeof(char)
保证在1
中C
,您不需要将其作为获取尺寸的乘数添加。这是多余的。