一个例子如下: #include <stdio.h> #include <string.h> #include <stdlib.h> char * retstring(); int main() { char * name2; name2 = retstring(); printf("%s\n",name2); //记住一定要用free释放,否则会造成内存泄露 free(name2); return 0; } char * retstring() { char * name; n...
方法三:返回一个静态局部变量。 一个例子如下: #include <stdio.h> #include <string.h> #include <stdlib.h> char * retstring(); int main() { char * name2; name2 = retstring(); printf("%s\n",name2); return 0; } char * retstring() { static char name[10]; strcpy(name,"张汉青...
#include <stdio.h> #include <string.h> char* getString() { char str[100]; // 声明一个字符数组来存储字符串 strcpy(str, "Hello, World!"); // 将字符串复制到字符数组中 return str; // 返回字符数组指针 } int main() { char* result = getString(); // 调用函数并获取返回的字符串 pr...
C语言只能return一个变量。如果要等价地return“多个”变量:1)使用指针类型的函数参数。2)使用结构体封装多个变量。3)使用全局变量 4)使用外部支持,如文件、管道、消息、网络等。
Option 1. Create the string dynamically within the function: char *funzione (void) { char *res = malloc (strlen("Example")+1); /* or enough room to keep your string */ strcpy (res, "Example"); return res; } In this case, the function that receives the resulting string is respons...
char * CatString(const char * s1, const char * s2){ int m1,m2; //两字符串长度 m1=strlen(s1); m2=strlen(s2); //求长度 char * s=(char *)malloc(sizeof(char)*(m1+m2+1)); //申请内存空间,多1字节 strcpy(s,s1); //复制第一个字符串 strcpy(s+m1,s2); //...
局部变量地址,必须在函数中用malloc()函数进行地址分配 采用全局变量地址 参考代码:void func1( char *s ) //通过形参返回字符串 { strcpy( s, "hello");} char * func1_1( char *s ) //另一种写法 { strcpy( s, "hello");return s ; //返回形参地址,方便程序调用 } char *...
当然可以 char* fun(){ char* myname = "hello world";return myname;},函数的返回值类型可以有很多种!(int,float,bool,char*,char...)
return 0; } // 运行结果 // abc def hig abc def hig 如果希望在最终读入的字符串中保留空格,可以使用getline函数,例子如下: #include <iostream> #include <string> using namespace std; int main(void) { string s1 ; // 初始化一个空字符串 ...
result) printf("dest is equal to src"); else printf("dest is not equal to src"); getch(); return 0; } 运行结果是: Hello World dest is equal to src 注意:本例程中,向字符数组中赋值时要保证字符数组中有足够的空间,虽然有时候即便空间不够也会打印出正确的结果,但随着程序的运行,不能保证...