看这样一段简单的程序:
#include <stdio.h> char* fun() { return "fun"; } int main() { printf("%s", fun()); return 0; }
这段程序可以正常run,但是最好不要这么做。
因为
直观上你返回了一个局部的东西出去。
你可以再外面定义这个常量,然后返回。
另外,字符串常量不可修改,而char*意味着要修改,故此最好加上const。
时间: 2024-10-18 05:20:36
看这样一段简单的程序:
#include <stdio.h> char* fun() { return "fun"; } int main() { printf("%s", fun()); return 0; }
这段程序可以正常run,但是最好不要这么做。
因为
直观上你返回了一个局部的东西出去。
你可以再外面定义这个常量,然后返回。
另外,字符串常量不可修改,而char*意味着要修改,故此最好加上const。