由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - weird output
相关主题
New C++ programmer, need to ask a I/O file read question一个极简单的程序求教
请帮忙看看这个字符函数的错误在哪里问个简单的memory allocation 的问题。
请问strcpy()和memcpy()的写法问题  (转载)Array in C
C pass string 问题谁帮我解释一下这个代码
请教一道c/c++题能帮忙看看这个字符串的操作问题吗?
帮忙看看这几段程序有问题吗?关于 exception 的一个问题
c的问题strcat()
Another question问个char*的问题
相关话题的讨论汇总
话题: str话题: strcpy话题: output话题: char话题: void
进入Programming版参与讨论
1 (共1页)
e******d
发帖数: 14
1
void func(void)
{
char *str = (char *) malloc(100);
strcpy(str, “"hello");
free(str);
if(str != NULL)
{
strcpy(str, “"world");
printf("%s\n", str);
}
}
The output is "world" on linux. The freed memory still can be accessed?
d*******d
发帖数: 2050
2
yes.
free means it can be used again. but it won't garantee to be reset to 0.
but it is very very dangerous.

【在 e******d 的大作中提到】
: void func(void)
: {
: char *str = (char *) malloc(100);
: strcpy(str, “"hello");
: free(str);
: if(str != NULL)
: {
: strcpy(str, “"world");
: printf("%s\n", str);
: }

1 (共1页)
进入Programming版参与讨论
相关主题
问个char*的问题请教一道c/c++题
请教一个C里面string copy的问题帮忙看看这几段程序有问题吗?
What is wrong with the constructor calling?c的问题
C程序的异常输出Another question
New C++ programmer, need to ask a I/O file read question一个极简单的程序求教
请帮忙看看这个字符函数的错误在哪里问个简单的memory allocation 的问题。
请问strcpy()和memcpy()的写法问题  (转载)Array in C
C pass string 问题谁帮我解释一下这个代码
相关话题的讨论汇总
话题: str话题: strcpy话题: output话题: char话题: void