低级问题:在BCB中char *a="abc" char *b="efg" 如何将两个变量合并成一个"abcefg"(100分)

  • 主题发起人 主题发起人 Fairys
  • 开始时间 开始时间
你可以这样做:
char *a = "abc",*b = "efg",*c;
c = new char[StrLen(a) + StrLen(b) + 1];
StrCopy(c,a);
StrCat(c,b);
ShowMessage(c);// 显示为"abcefg"
delete[] c;
 
注意大小写
#include <string.h>
strlen()
strcpy()
strcat()
 
在string.h头文件中那几个函数确实如上写法。
不过,我引用的是#include <SysUtils.hpp>
在CB6中它提供给程序员的函数原型就是如我这种写法,如果改为全是小写的话,会报警!
 
如果定义成string
不是就可以直接+了
 
AnsiString(c)+AnsiSting(d)
直接转换最方便。
 
up to cook and Chenlili
其实,找本书就OK!
 
如果你的程序不需要考虑移植性的话,可以用AnsiString类型,AnsiString类型的效率很
高,在用于参数类型需要char *或const char *类型的时候,可以用.c_str()方法来返回。
 
多谢各位的答案:
to cook:因为要考滤移植,所以一定要用char
to Archerfl,Sachow:感谢你们的答案,问题解决,分稍后送出。
还请各位再帮一忙:如何动态调用QuickReport,是写在一个名为ABC的函数中的,。
 
多人接受答案了。
 
后退
顶部