标题:问一个问题,烦恼了很久了
只看楼主
lishizelibin
Rank: 2
等 级:论坛游民
帖 子:513
专家分:41
注 册:2007-5-10
得分:0 

你加一个
#include<iostream>试试
不过我建议用
malloc
给它申请空间
那时建议加个
#include<stdlib.h>


惟有学习不断的学习!
2007-08-22 13:11
josen0205
Rank: 2
来 自:江苏
等 级:论坛游民
帖 子:307
专家分:52
注 册:2007-5-8
得分:0 

你的能通过编译吗,getch()包含在头文件 conio.h中
/********************************************/
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>

int main()
{
char *s;
s=(char*)malloc(10);//动态分配10个字节的内存空间
scanf("%s",s);
printf("%s",s);
free(s);//释放内存
getch();
return 0;
}

[此贴子已经被作者于2007-8-24 13:59:44编辑过]


只有想不到,没有做不到
2007-08-24 13:55
josen0205
Rank: 2
来 自:江苏
等 级:论坛游民
帖 子:307
专家分:52
注 册:2007-5-8
得分:0 
new和delete是c++中的动态分配内存和释放内存函数,包含在有文件 iostream.h中,c语言中用的是malloc和free来动态分配内存和释放内存

只有想不到,没有做不到
2007-08-24 14:05
skyzwch
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-8-21
得分:0 
谢谢各位,我明白了
2007-08-24 17:31
zj860713
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2007-3-16
得分:0 

#include <iostream>
using namespace std;
int main()
{
char *s;
s = new char [10];
scanf("%s",s);
printf("%s",s);
delete [] s;
return 0;
}
2007-08-24 18:27
biubui
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-6-27
得分:0 
太危险了!!!!!!!!!!!!!!!!!!!!1
#include <stdio.h>
main()
{
char *s;指针s没有指向确定的位置,现在他是随机指向内存某个位置的!!!!
scanf("%s",s);强行修改内存中的数据,VC自然认为这是危险的!!!!!!!系统没崩溃就不错了
printf("%s",s);
getch();
}

2007-08-31 17:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-164451-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.521334 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved