关于C51的语法

LongBow007 2008-11-16 10:26:30
unsigned char txt[]={"aaaaa"};
char a="aaaaa";
char b="bbbbb";

我想让txt的值为 aaaaabbbbb
请问该怎么写呢。

还有我可以对a和b进行异或运算吗?
...全文
144 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
LongBow007 2008-11-16
  • 打赏
  • 举报
回复
第一个,你的TXT的空间不够。。。


unsigned char txt[]={"aaaaa"}和unsigned char txt[50]={"aaaaa"}不一样啊?
而且好像 unsigned char txt[100]={"aaaaa"}; 不行 提示错误:
*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL
SYMBOL: ?C_START
MODULE: STARTUP.obj (?C_STARTUP)
ADDRESS: 000DH
Program Size: data=9.0 xdata=0 code=15
"d" - 0 Error(s), 2 Warning(s).


gooogleman 2008-11-16
  • 打赏
  • 举报
回复
[Quote=引用楼主 LongBow007 的帖子:]
unsigned char txt[]={"aaaaa"};
char a="aaaaa";
char b="bbbbb";

我想让txt的值为 aaaaabbbbb
请问该怎么写呢。

还有我可以对a和b进行异或运算吗?
[/Quote]

是字符串啊。楼主要看多点c语言哦。
lbing7 2008-11-16
  • 打赏
  • 举报
回复
unsigned char txt[]={"aaaaa"};
char a="aaaaa";
char b="bbbbb";

我想让txt的值为 aaaaabbbbb

第一个,你的TXT的空间不够。。。

会溢出,破坏你的内存其它变量的空间

最简单的办法是,定义一个足够大的TXT

请问该怎么写呢。

可以用LS说的用STRING。H里的库函数

也可以用FOR循环,一个一个赋进去


还有我可以对a和b进行异或运算吗?
可以进行异或运算

不过运算只是ASCII码值的异或
zyzhang365 2008-11-16
  • 打赏
  • 举报
回复
库函数好像是strcat()吧, 内存拷贝就是使用memcpy();
异或运算应该是可以的.
LongBow007 2008-11-16
  • 打赏
  • 举报
回复
unsigned char txt[]={"aaaaa"};
char[] a="aaaaa";
char[] b="bbbbb";
是不是这样就可以了。

怎么使用库函数或者内存直接拷贝呢。 还有可以对a和b进行异或运算吗?
zyzhang365 2008-11-16
  • 打赏
  • 举报
回复
和C51没有关系, 基本都是C的东西.


[Quote=引用楼主 LongBow007 的帖子:]
unsigned char txt[]={"aaaaa"};
char a="aaaaa"; // 这种方法不对
char b="bbbbb";

我想让txt的值为 aaaaabbbbb
请问该怎么写呢。

还有我可以对a和b进行异或运算吗?
[/Quote]

想把两个字符串连接方法很多, 可以使用库函数. 也可以通过内存直接拷贝操作...

27,375

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧