gpt4 book ai didi

需要 c 基本结构帮助

转载 作者:太空宇宙 更新时间:2023-11-04 05:20:49 24 4
gpt4 key购买 nike

我想使用指针将值复制到 struct 中。

我不断收到这一小段代码的段错误。

struct companyInfo
{
double sharePrice;
char companyName[100];
};

int main()
{
struct companyInfo * pdata = NULL;
strcpy(pdata->companyName, "sdfsd");

exit(0);
}

最佳答案

您没有为结构分配任何空间,只是一个空指针。

struct companyInfo * pdata = NULL; 
pdata = calloc( 1, sizeof(struct companyInfo) );
if( pdata != NULL )
{
strncpy(pdata->companyName, "sdfsd", sizeof(pdata->companyName) - 1);
}

注意:calloc() 也会为您清零内存,而 malloc() 只会分配内存。此外,您应该检查这些函数的返回值以确保指针不为 NULL。

重要:任何使用 malloc()、calloc()、ex.. 分配的内存都需要显式释放。

例子:

if( pdata != NULL )
{
free( pdata );
}
exit(0);

关于需要 c 基本结构帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9639004/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com