楼主:
oin1104 (是oin的说)
2023-12-08 15:02:16/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
char* map = malloc(sizeof(char) * 100000);
int pf[1] = {};
bool go(struct TreeNode* root)
{
if(root == NULL)return;
map[pf[0]] = '(root->val)' ;
pf[0] ++;
if((root->left != NULL)&&(root->right != NULL))
{
map[pf[0]] = '(';
pf[0] ++;
go(root->left);
map[pf[0]] = ')';
pf[0] ++;
map[pf[0]] = '(';
pf[0] ++;
go(root->right);
map[pf[0]] = ')';
pf[0] ++;
}
else if(root->left != NULL)
{
map[pf[0]] = '(';
pf[0] ++;
go(root->left);
map[pf[0]] = ')';
pf[0] ++;
}
else if(root->right != NULL)
{
map[pf[0]] = '(';
pf[0] ++;
map[pf[0]] = ')';
pf[0] ++;
map[pf[0]] = '(';
pf[0] ++;
go(root->right);
map[pf[0]] = ')';
pf[0] ++;
}
}
char* tree2str(struct TreeNode* root)
{
go(root);
map[pf[0]] = '\0';
pf[0] ++;
return map;
}
今天的每日 为啥会错
他说我编译错误捏
https://i.imgur.com/ASpoxsY.png
作者:
Wardyal (Wardyal)
2023-12-08 15:03:00你把大小移出来设定一个int值再放到malloc里面C不知道可不可以像你这样宣告
楼主:
oin1104 (是oin的说)
2023-12-08 15:05:00还是不行
作者:
Wardyal (Wardyal)
2023-12-08 15:06:00这是C吗 malloc是这样用的吗喔 没事
楼主:
oin1104 (是oin的说)
2023-12-08 15:07:00是 这是c应该是这样D:
直接拿initializer element is not constant去谷歌
作者:
Wardyal (Wardyal)
2023-12-08 15:13:00喔 看到了你把宣告这个map的东西丢到function或是main里面
作者:
Wardyal (Wardyal)
2023-12-08 15:14:00对阿 好像是
楼主:
oin1104 (是oin的说)
2023-12-08 15:33:00我改好了 我把宣告留在外面然后再main程式里面设定那个东西 谢谢大家