尽管我努力解决我的问题,但无论何时编译我的代码,它都有错误或者立即失败。我的目标是在我的'run_program'
函数中创建一个字符数组,然后将该数组作为指针传递给我的my_str_n_cat
函数(作为指针,以便我可以立即返回更改)。不幸的是,在编码方面很糟糕,所以我不能打印它。任何帮助将不胜感激。传递数组指针并打印
//Task #1 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
char my_str_n_cat (char *source_ptr)
{
(*source_ptr);
printf("My Name Is %s", *source_ptr);
}
//Main ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int run_program()
{
int ;
char source[6] = {'D', 'I', 'L', 'L', 'O', 'N'}, destination[10];
char *source_ptr, *destination_ptr;
source_ptr = source;
my_str_n_cat(&source_ptr);
}
而当你在它的时候,语句'(* source_ptr);'什么都不做。这相当于'69;'。 –
感谢您的回复,不幸的是我的my_str_n_cat(&source_ptr)有一个错误,说“没有重载函数的实例'my_str_n_cat'匹配参数列表参数类型是:(char **)”任何想法如何解决这个问题?当我删除ambersand时,它只是输出字符串ass null。 –
@DillonJ。您正在使用** C++ **编译器,这是因为我的答案中的第三点,您正在传递一个不兼容类型的指针。如果你使用c,你需要配置你的环境,以便它使用正确的编译器。 –