重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
char text[3][80]中的text是一个二维数组的数组名,数组名也是一个标识符,text也就代表了整个二维数组的首地址。这个是用户自己定义的,你可以写成char a[3][80];那么a跟text就是一样的。
成都创新互联公司自成立以来,一直致力于为企业提供从网站策划、网站设计、网站设计制作、网站设计、电子商务、网站推广、网站优化到为企业提供个性化软件开发等基于互联网的全面整合营销服务。公司拥有丰富的网站建设和互联网应用系统开发管理经验、成熟的应用系统解决方案、优秀的网站开发工程师团队及专业的网站设计师团队。
网页故障,网页修复一下就行!(text本义是文本的意思)。
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。[1]目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。
c语言中的windows.h
中包含的可调用的函数有
int
CDECL
MessageBoxPrintf
(TCHAR
*
szCaption,
TCHAR
*
szFormat,
...)
//TCHAR就是宽字符,你学过C++应该知道CHAR,TCHAR就是CHAR的两倍长度,用来兼容UNICODE的,至于UNICODE和ANSI的区别,你自己去查了。CDECL这个是C语言函数的默认调用惯例,调用惯例是什么,就是操作系统如何调用这个函数,包含了如何保存参数如何返回值等等,具体可以去查。
{
TCHAR
szBuffer
[1024]
;
va_list
pArgList
;//这里提一些必须的东西,va这个开头的宏都是处理可变参数列表的,什么是可变参数列表,意思就是可以变长的参数列表,这个在WINDOWS下用得非常多,比如printf的函数,里面用类似很多%d的格式控制,也有实际输出的内容,都是作为函数的参数,具体有多少要看实际情况,所以可变参数列表在这里就起作用了。
va_list就是申明一个可变参数列表的变量
va_start
(pArgList,
szFormat)
;//va_start用于初始化可变参数列表,具体的效果就是把szFormat这个可变参数列表的第一个参数地址赋给了pArgList
_vsntprintf
(szBuffer,
sizeof
(szBuffer)
/
sizeof
(TCHAR),
szFormat,
pArgList)
;
//这个很简单,就是把szFormat和pArgList格式成字符串放在szBuffer里了
va_end
(pArgList)
;//把pArgList清0,这个只是为了程序的规范。
return
MessageBox
(NULL,
szBuffer,
szCaption,
0)
;
显示一个内容为szBuffer标题为szCaption的默认对话框,只有一个确定的那种
}
int
WINAPI
WinMain
(HINSTANCE
hInstance,
HINSTANCE
hPrevInstance,
PSTR
szCmdLine,
int
iCmdShow)
{
int
cxScreen,
cyScreen
;
cxScreen
=
GetSystemMetrics
(SM_CXSCREEN)
;
cyScreen
=
GetSystemMetrics
(SM_CYSCREEN)
;//取得屏幕的宽高
MessageBoxPrintf
(TEXT
("ScrnSize"),
TEXT
("The
screen
is
%i
pixels
wide
by
%i
pixels
high."),
cxScreen,
cyScreen)
;//调用上面的那个函数,TEXT用于转换为UNICODE
return
;
}
TEXT里面只可以写字符串常量,不可以用字符串指针。因为TEXT宏的作用是在需要的时候往常量前加一个L
比如
"a"
某些情况变成
L"a",前者是ansi字符串后者是unicode字符串。
这是由预编译器完成的。对于“变量”则无法实现,因为char*就是表示ansi字符串,wchar_t*才是表示unicode字符串。
如果你需要在运行时从ansi转换到unicode,使用
MultiByteToWideChar
函数。
如果你代码能够自适应这种变化,请参考ATL中
A2T
宏的用法
C语言中的函数功能一般情况是根据功能命名以方便记忆,但是这个以个人的爱好,有的可以随便命名,具体还要根据你函数的功能
如果是在vc编程中,这是一个宏,用来处理字符串,可以不用管字符串是Unicode编码,还是Ansii编码。相同功能还有_T宏。