| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5874 人关注过本帖, 4 人收藏
标题:有个疑惑待解
取消只看楼主 加入收藏
J1036014410
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-11-2
结帖率:100%
收藏(4)
已结贴  问题点数:20 回复次数:8 
有个疑惑待解
本人新手。看很多c语言教程上说数组是不能动态赋值的,即以下形式是非法的:int n;scanf("%d",&n);int m[n]。
但是我实际编写时发现编译和运行都没问题,不知道是为什么。以下是我的实例:
#include<stdio.h>
void main()
{
    int n,i;
    printf("input:");
    scanf("%d",&n);
    int m[n];
    printf("inputs:");
    for(i=0;i<n;i++)
      scanf("%d",&m[i]);
    for(i=0;i<n;i++)
      printf("%4d",m[i]);
    printf("\n");
}
上面是源码,以下是编译和运行过程。注:本人是在linux系统下用gcc编译器。

loongson@LOonux:~$ gcc -g -o shuzu.o shuzu.c
loongson@LOonux:~$ ./shuzu.o
input:4
inputs:1 2 3 4
   1   2   3   4

没有任何问题!
搜索更多相关主题的帖子: include 编译器 动态 
2012-11-02 16:58
J1036014410
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 2楼 TonyDeng
谁说是.exe文件了?明明就是那个shuzu.o文件。linux系统。
2012-11-02 17:22
J1036014410
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 11楼 TonyDeng
在没验证之前就不要瞎说,你用windows下的编译器试试,如果编译不通过,我没啥说的,如果通过了呢?你怎么说?
2012-11-02 20:10
J1036014410
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 6楼 TonyDeng
你真捣蛋。
2012-11-02 20:16
J1036014410
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 16楼 TonyDeng
凭证呢?
2012-11-02 20:17
J1036014410
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 21楼 TonyDeng
恩,好吧,在这里gcc确实有问题,谢谢大手了,我能力确实还不够.受教了!
2012-11-02 20:46
J1036014410
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 23楼 TonyDeng
我之后又用gdb调试了一下,也是正常的,但愿是我自己的问题,呵呵
2012-11-02 20:53
J1036014410
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 27楼 TonyDeng
恩,太谢谢了!
2012-11-03 20:47
J1036014410
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 28楼 beyondyf
呵呵,大家都是来交流的,何必要如此势不两立呢,多交流很有好处。如果因为我的帖子而引发这么一场论战,那就不是我的初衷了,况且他说的很好,我很受教,如有不合适的,大家一块儿交流嘛。希望我也能得到你的帮助。
2012-11-03 20:54
快速回复:有个疑惑待解
数据加载中...
 
   



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

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