新人写C遇到的问题.

fvflove 2008-09-23 10:08:36
我有以下几个问题点:声明(我用的是VS2005)

1.字符赋值.

char Ch;

Ch = "fvflove" //不通过
Ch = _T("fvflove") // 不通过
Ch = L"fvflove" //不通过

CString ch = "fvflove" //不通过 '没有 CString
CString ch = _T"fvflove" //不通过
CString ch = L"fvflove" //不通过

String ch = "fvflove" //不通过 'String是类, Ch前面要加 :

一个字符串赋值怎么这么难呢?

2.自定义方法的实现

声明:
void m_function (char);

方法:
void m_function (char Text)
{
fvfrto::MessageBox::Show(Text); //错误
}

调用:

m_function("fvflove") //不通过


'如果我想这样调用行不行?怎么实现?

m_function(123)'传递一个数据过去,让他用对话框显示出来.怎么实现?





...全文
244 22 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
lostbyte2006 2008-09-23
  • 打赏
  • 举报
回复


1.字符赋值.

char Ch;

Ch = "fvflove" //不通过 // 这个肯定通不过,不能把字符变量赋值为字符串数据。
Ch = _T("fvflove") // 不通过 //同上。
Ch = L"fvflove"  //不通过 //同上。

CString ch = "fvflove" //不通过 '没有 CString //如果写的是win32控制台程序的话需要加入头文件,好像是afx.h吧。
CString ch = _T"fvflove" //不通过 //同上
CString ch = L"fvflove" //不通过 //同上

String ch = "fvflove" //不通过 'String是类, Ch前面要加 : //貌似是小写string。这种赋值方法可以的。但是需要加头文件"string.h"

一个字符串赋值怎么这么难呢?

2.自定义方法的实现

声明:
void m_function (char);

方法:
void m_function (char Text)
{
fvfrto::MessageBox::Show(Text); //错误
}

调用:

m_function("fvflove") //不通过


'如果我想这样调用行不行?怎么实现?

m_function(123)'传递一个数据过去,让他用对话框显示出来.怎么实现?


//这个错误也一样,形参是char,而传进的是个字符串常量,肯定无法处理。


//C中的字符串一般是用数组来处理的,c++中可以使用string这种类型。比较方便。

allenpettle 2008-09-23
  • 打赏
  • 举报
回复
这两个问题都是字符与字符串的问题。
char定义一个字符,不能定义一个字符串。
可以定义一个字符指针指向一个字符串区域。
例如:

char *p="1234";
//又或定义一个字符数组
char p[]="1234";
boys2002 2008-09-23
  • 打赏
  • 举报
回复
字符和字符串混淆了啊




好好看看C 语言基础好了

先别弄这个 ,基础啊
mifeixq 2008-09-23
  • 打赏
  • 举报
回复
lz是一点C语言书都没看吧~~有语言基础,花点时间翻翻书就迎刃而解了!
qqq41251299 2008-09-23
  • 打赏
  • 举报
回复
靠,vb版里的倒分高手又来c++版了?!以后c++版也不得安宁了!!!
lbt777777 2008-09-23
  • 打赏
  • 举报
回复
字符数组需要一个一个的copy
SeanHwang 2008-09-23
  • 打赏
  • 举报
回复
没看见LZ的小红花是VB的吗~~~LZ还是找本书老老实实看看字符和字符串的区别~
Ch = "fvflove" //不通过,给你提示下 char *ch = "fvflove";
sheshijie 2008-09-23
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 richbirdandy 的回复:]
引用 5 楼 Win32Coder 的回复:
估计lz是从别的语言转过来的.
只有引用的内容不允许回复!!
[/Quote]
只有引用的内容不允许回复!!
fvflove 2008-09-23
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lionc650 的回复:]
C/C++ codechar Ch[20];//here.

Ch = "fvflove" //不通过
Ch = _T("fvflove") // 不通过
Ch = L"fvflove" //不通过
[/Quote]

(109) : error C2440: '=' : cannot convert from 'const wchar_t [8]' to 'char [20]'
richbirdandy 2008-09-23
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 Win32Coder 的回复:]
估计lz是从别的语言转过来的.
[/Quote]只有引用的内容不允许回复!!
Win32Coder 2008-09-23
  • 打赏
  • 举报
回复
估计lz是从别的语言转过来的.
loveisbug 2008-09-23
  • 打赏
  • 举报
回复
翻翻书,关于字符型和字符串。

m_function要传整数的话,得定义成m_function(int val)。
hemiya 2008-09-23
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 langhua0001 的回复:]
字符,字符串 楼主先搞清这两个概念吧
[/Quote]
同意.
估计lz是从别的语言转过来的.
lionc650 2008-09-23
  • 打赏
  • 举报
回复
char Ch[20];//here.

Ch = "fvflove" //不通过
Ch = _T("fvflove") // 不通过
Ch = L"fvflove" //不通过
langhua0001 2008-09-23
  • 打赏
  • 举报
回复
字符,字符串 楼主先搞清这两个概念吧
gton08 2008-09-23
  • 打赏
  • 举报
回复
字符和字符串是不一样的
LZ回去看下书
看下老谭的那本<c程序设计>
NSKevin 2008-09-23
  • 打赏
  • 举报
回复
只是字符跟字符串的问题..
fvflove 2008-09-23
  • 打赏
  • 举报
回复
int x;
x=123;
button1->Text = x.ToString();
a(x.ToString());


又学会了把 int 转换给 String (其它的应该也是这样转换了.)


我要老师啊.

要老师啊,

我VB是这样弄会的,但是花了我10年的时间啊.

我可不想再花10年时间,都靠自己摸索.

HNLGDXYJS 2008-09-23
  • 打赏
  • 举报
回复
up
xianyuxiaoqiang 2008-09-23
  • 打赏
  • 举报
回复
支持楼主的学习精神。

不过提醒下:你现在是用C++来学C,不纯啊。

建议使用Linux的Gcc编译器跑些简单的纯C代码。

从面向对象退化到面向过程是要有耐心的=。=!
加载更多回复(2)

33,321

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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