社区
C++ 语言
帖子详情
用VC6.0写C语言程序为什么不能运行
visayafan
2010-07-27 11:35:42
#include "stdio.h"
void main()
{
int a;
scanf("%d",a);
printf("%d",a);
}
上面的程序编译的时候无错误,运行的时候却出现错误 内存不能为written
请高手解惑
...全文
660
15
打赏
收藏
用VC6.0写C语言程序为什么不能运行
#include "stdio.h" void main() { int a; scanf("%d",a); printf("%d",a); } 上面的程序编译的时候无错误,运行的时候却出现错误 内存不能为written 请高手解惑
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cnlm2
2010-07-27
打赏
举报
回复
scanf("%d",a)
第二个参数
ayw215
2010-07-27
打赏
举报
回复
scanf("%d",a);======》scanf("%d",&a);
printf("%d",a);
}
visayafan
2010-07-27
打赏
举报
回复
多谢大家了 我明白了
GARY
2010-07-27
打赏
举报
回复
没有给str分配空间,参考7楼。
黑泡泡选手
2010-07-27
打赏
举报
回复
发现很多新手都没有初始化的习惯啊!
xy_zhang
2010-07-27
打赏
举报
回复
[Quote=引用 11 楼 beauty_xia 的回复:]
引用 3 楼 pfanaya 的回复:
多谢回答 我刚过C++ 对C的语法不是很了解
下面这个程序运行时和上面的出现同样的结果 也是内存不能written
#include "stdio.h"
void main()
{
char *str;
scanf("%[^\n]",str);//这里的str应该不用加&了吧 str存放的就是地址
printf("……
[/Quote]
没有给str分配空间,参考7楼。
不然就直接char str[100]就行了……
beauty_xia
2010-07-27
打赏
举报
回复
[Quote=引用 3 楼 pfanaya 的回复:]
多谢回答 我刚过C++ 对C的语法不是很了解
下面这个程序运行时和上面的出现同样的结果 也是内存不能written
#include "stdio.h"
void main()
{
char *str;
scanf("%[^\n]",str);//这里的str应该不用加&了吧 str存放的就是地址
printf("\n%s",str);
}
不知道问题出在哪里了 ……
[/Quote]
*str str还没有初始化 没有地址
Daniel_31
2010-07-27
打赏
举报
回复
[Quote=引用 8 楼 x2010072710 的回复:]
#using namespace std;
加上这个试试
[/Quote]
#using namespace std;???????????
赵4老师
2010-07-27
打赏
举报
回复
[Quote=引用 1 楼 ayw215 的回复:]
scanf("%d",a);======》scanf("%d",&a);
printf("%d",a);
}
[/Quote]
正解
VC调试时按Alt+8,TC或BC用TD调试,打开汇编窗口看每句C对应的汇编不就啥都明白了吗。
(Linux或Unix下应该也可以在用GDB调试时,看每句C对应的汇编。)
想要从本质上理解C指针,必须学习汇编以及C和汇编的对应关系。
从汇编的角度理解和学习C语言的指针,原本看似复杂的东西就会变得非常简单!
x2010072710
2010-07-27
打赏
举报
回复
#using namespace std;
加上这个试试
wyz007134
2010-07-27
打赏
举报
回复
[Quote=引用 3 楼 pfanaya 的回复:]
多谢回答 我刚过C++ 对C的语法不是很了解
下面这个程序运行时和上面的出现同样的结果 也是内存不能written
#include "stdio.h"
void main()
{
char *str = new char[100];
scanf("%[^\n]",str);//这里的str应该不用加&了吧 str存放的就是地址
printf("\n%s",str);
delete[] str;
}
不知道问题出在哪里了 希望……
[/Quote]
wyz007134
2010-07-27
打赏
举报
回复
[Quote=引用 3 楼 pfanaya 的回复:]
多谢回答 我刚过C++ 对C的语法不是很了解
下面这个程序运行时和上面的出现同样的结果 也是内存不能written
#include "stdio.h"
void main()
{
char *str;
str = new char[100];
scanf("%[^\n]",str);//这里的str应该不用加&了吧 str存放的就是地址
printf("\n%s",str);
delete[] str;
}
不知道问题出在哪里了 希望……
[/Quote]
visayafan
2010-07-27
打赏
举报
回复
怎么会这样???
newxdlysk
2010-07-27
打赏
举报
回复
[Quote=引用 3 楼 pfanaya 的回复:]
多谢回答 我刚过C++ 对C的语法不是很了解
下面这个程序运行时和上面的出现同样的结果 也是内存不能written
#include "stdio.h"
void main()
{
char *str;
scanf("%[^\n]",str);//这里的str应该不用加&了吧 str存放的就是地址
printf("\n%s",str);
}
不知道问题出在哪里了 希望……
[/Quote]
VC6,gcc均未出现错误
visayafan
2010-07-27
打赏
举报
回复
多谢回答 我刚过C++ 对C的语法不是很了解
下面这个程序运行时和上面的出现同样的结果 也是内存不能written
#include "stdio.h"
void main()
{
char *str;
scanf("%[^\n]",str);//这里的str应该不用加&了吧 str存放的就是地址
printf("\n%s",str);
}
不知道问题出在哪里了 希望高手解惑
如何用
VC6.0
编
写
C语言
程序
本资源介绍如何用
VC6.0
编
写
C语言
程序
,是
C语言
初学者的有益参考。
VC6.0
上
C语言
的贪吃蛇源码
VC6.0
用
C语言
写
的贪吃蛇源码,界面不太好看,大家包容,有兴趣的可以改改界面,呵呵 最近看到有人说链接时出错,那是因为需要将里面的一个库导进去,东西都在里面,相信大家一看就能明白
二级
C语言
视频教程
IT老鸟:15年c,c++开发经验,精通音视频流媒体技术 系统学习
C语言
的基础知识, 熟悉开发工具:VC6, VC2005, VC2010 IT老鸟与大家一起分享学习
C语言
的快乐
ATM提款机
VC6.0
编程
C语言
这是我刚刚学习
VC6.0
的时候。老师布置的作业题。仅供交流学习使用。
vc6.0
下用
C语言
写
的银行管理系统
自己用
C语言
在
vc6.0
下
写
的简单的银行管理系统
C++ 语言
64,652
社区成员
250,508
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章