我想使用箭头符号在输出中打印字符串“HelloWorld”。 但它没有按预期工作,有人可以指出这段代码中的错误并帮助我解决这个问题。
#include <stdio.h>
typedef struct Node {
int a ;
char a[100]="HelloWorld";
}Node;
main(){
Node *v;
printf("%s\n",v->a);
}
您的代码中有多个错误:
main
的返回类型。这看起来好像你试图通过反复试验来学习 C,永远不会有好结果。
您的代码片段需要更改如下:
#include <stdio.h>
typedef struct Node {
int value;
char text[100];
} Node;
int main(void)
{
Node *v = malloc(sizeof(*v));
if (v == NULL)
{
perror("Cannot allocate memory");
exit(1);
}
v->value = 123;
strcpy(v->text, "Hello World");
printf("%s\n",v->text);
}