这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » ads1.2不能编译大于140k的大的工程文件?---有眉目了

共7条 1/1 1 跳转至

ads1.2不能编译大于140k的大的工程文件?---有眉目了

菜鸟
2005-08-30 03:39:15     打赏

很是郁闷!

随着工程代码的增加,到了一定程度时候,大于140k时出现莫名其妙的错误:

比如对一个全局变量的赋两次同样的值,程序就不能运行了.去掉重复的赋值语句,结果就好使了!


不知道各位大虾遇到过没有?究竟是什么原因呢?

是破解版的ADS不好吗?

[align=right][color=#000066][此贴子已经被作者于2005-9-2 9:23:42编辑过][/color][/align]



关键词: ads1.2     不能     编译     大于     大的     工程     文件         

菜鸟
2005-08-31 00:37:00     打赏
2楼
不会有大小限制的,应该是你程序本身的问题。

菜鸟
2005-08-31 07:14:00     打赏
3楼
我刚编译了一个440K的程序。[em01]

菜鸟
2005-08-31 08:25:00     打赏
4楼
不是ADS问题,uc/GUI编译后的BIN文件就有1.5M,代码源文件大小更是超过这个数量级

菜鸟
2005-09-02 17:21:00     打赏
5楼

找到了一点眉目:是各个单独编程的模块数据类型定义不一致导致的。不过还有几个简单的问题要请教:

我看到AARM库文件stdint.h中定义数据类型:

typedef signed char int8_t;
typedef signed short int int16_t;
typedef signed int int32_t;
typedef signed __int64 int64_t;

/* exact-width unsigned integer types */
typedef unsigned char uint8_t;
typedef unsigned short int uint16_t;
typedef unsigned int uint32_t;
typedef unsigned __int64 uint64_t;


但看到杜春雷的书里面说ARM编译器 long 与int 都是32位,想问一下

1、long应该是与short相对应的吧?我看到声明为short int与声明为short 类型是一样的。那么通常说的 int 与 long 是不是指同一整数类型啊?

[align=right][color=#000066][此贴子已经被作者于2005-9-2 9:31:49编辑过][/color][/align]

菜鸟
2005-09-02 21:56:00     打赏
6楼
以下是引用flyingbxf在2005-9-2 9:21:00的发言:

那么通常说的 int 与 long 是不是指同一整数类型啊?


对ARM来说,是的


菜鸟
2005-09-02 23:42:00     打赏
7楼

但是声明为long类型的变量赋值给int类型的变量时,为什么armcc编译器还会警告提示

Warning: C2921W: '=:'implicit narrowing cast from "unsigned long" to "unsigned int" ?

另外如何从ADS中查找一个错误编号代表什么意思呢??


共7条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]