【发布时间】:2016-05-24 10:27:34
【问题描述】:
我正在尝试在 Initialize 中初始化一个字符串,然后将其传递给 int main() 以进行屏幕输出,但似乎已初始化的字符串已变为损坏。
标题
#include<stdio.h>
#include<stdlib.h>
初始化
void
Initialize(char* STRINGs)
{
STRINGs = malloc(sizeof(char)*5);
STRINGs = "hello" ;
printf("1: %s\n",STRING);
}
主要
int
main (char* STRINGs)
{
Initialize(STRINGs);
//The program stops working when it reaches this section
printf("2: %s",STRINGs);
return 0;
}
【问题讨论】:
-
你需要学习strcpy和大量的字符串操作,malloc之前的指针。
-
程序从
main函数开始。所以你应该使用另一个函数在main中完成你想要的任务。 -
此
int main (char* STRINGs)无效 C。请使用int main (void)或int main (int argc, char * argv[])或int main (int argc, char ** argv)。
标签: c arrays function pointers