error C2065: 'UNIT' :null undeclaredd identifier是哪儿的问题啊

在VC++中运行C语言程序提示errorC2065:...und? - 爱问知识人
(window.slotbydup=window.slotbydup || []).push({
id: '2491531',
container: s,
size: '150,90',
display: 'inlay-fix'
在VC++中运行C语言程序提示error C2065: ... undeclared
方面的。。。源程序有四个文件
第一个:
#include "stdio.h"
int main()
{
extern void getString(char str[]);
extern void output(char str[]);
extern void reverse(char str[], int low, int high);
char text[50];
printf("请输入字符串,不要超过50个字符:\n");
getString(text);
reverse(text, 0, strlen(text)-1);
printf("反转后的字符串为:\n");
output(text);
return 1;
}
第二个:
#include "stdio.h"
//获取字符串
void getString(char str[])
{
gets(str);
}
第三个:
#include "stdio.h"
//输出字符串
void output(char str[])
{
printf("%s\n", str);
}
第四个:
#include "stdio.h"
//字符串反转处理函数
void reverse(char s[], int l, int h)
{
reverse(s, l+1, h-1);
t = s[l], s[l] = s[h], s[h] =
运行后出现如下 的错误:
--------------------Configuration: 例9_13 - Win32 Debug--------------------
Compiling...
input.cpp
F:\例9_13\input.cpp(7) : error C2065: 'gets' : undeclared identifier
mainfile.cpp
F:\例9_13\mainfile.cpp(12) : error C2065: 'printf' : undeclared identifier
F:\例9_13\mainfile.cpp(15) : error C2065: 'strlen' : undeclared identifier
output.cpp
F:\例9_13\output.cpp(6) : error C2065: 'printf' : undeclared identifier
Generating Code...
执行 cl.exe 时出错.
例9_13.exe - 1 error(s), 0 warning(s)
----------------------------------------------
请各位高手帮忙解决!!!谢谢!~
谢谢。。我知道原因了。。
不过程序一点错也没有~···
您的举报已经提交成功,我们将尽快处理,谢谢!
是文件头的原因。
用这句语句替换掉:#include &stdio.h&
你应该使用ASCII码显示的吧。
VC吧...作为C来说,本身是比较简单的,用VC,TC都差不了多少
但是由于TC在XP下兼容性不太好,如果不使用外壳,常常会莫名其妙的停顿很久,而VC则没有这...
推荐楼主,先看一下C语言实用程序设计100例,里面有很多很好的算法例子。
附件有 ,楼主可以看一下里面的多媒体设计那块。
还有,用C开发图形界面,真...
大家还关注VC故障总结
“error C2065: 'IDD_XXXX_DIALOG' : undeclared identifier”的问题
编译vc项目时提示类似“error C2065:
'IDD_XXXX_DIALOG' : undeclared identifier”的问题;
该问题可能有两种原因:
第一种是确实不存在该对话框的ID,这种情况下就要把对应的对话框的ID改为正确的;
第二种是存在该对话框,但是找不到,这种情况下可以在类的头文件中加入“#include&&
"resource.h" ”语句解决;
WSAData机构体如下&
功能是:存放windows socket初始化信息.
struct WSAData {&
WORD wHighV&
char szDescription[WSADESCRIPTION_LEN+1];&
char szSystemStatus[WSASYSSTATUS_LEN+1];&
unsigned short iMaxS&
unsigned short iMaxUdpDg;&
char FAR * lpVendorI&
wVersion为你将使用的Winsock版本号,
wHighVersion为载入的Winsock动态库支持的最高版本,注意,它们的高字节代表次版本,低字节代表主版本。
szDescription与szSystemStatus由特定版本的Winsock设置,实际上没有太大用处。
iMaxSockets表示最大数量的并发Sockets,其值依赖于可使用的硬件资源。
iMaxUdpDg表示数据报的最大长度;然而,获取数据报的最大长度,你需要使用WSAEnumProtocols对协议进行查询。
最大数量的并发Sockets并不是什么神奇的数字,它是由可用的物理资源来决定的.
lpVendorInfo是为Winsock实现而保留的制造商信息,这个在Windows平台上并没有什么用处.
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。查看: 2153|回复: 17
在线时间5 小时相册日志分享好友UID3197帖子主题精华4积分5791阅读权限200最后登录威望2567 点金钱14346 金币存款0 金币新贡献0 点注册时间
紫幻-翼-羽
帖子积分5791
&&一个在窗体上绘制正弦曲线的程序,不知道为什么消息处理函数总是不对,因为是自学,也不知道是哪里的问题~请大家指点迷津~
程序如下:
[box=white]
// a.cpp : Defines the entry point for the application.
LRESULT _stdcall WndProc(HWND,UNIT,WPARAM,LPARAM)& &//消息处理函数声明
#include &stdafx.h&
#include &math.h&
int APIENTRY WinMain(HINSTANCE hInstance,& && &&&//构建窗体
& && && && &&&HINSTANCE hPrevInstance,
& && && && &&&LPSTR& & lpCmdLine,
& && && && &&&int& &&&nCmdShow)
& &&&// TODO: Place code here.
& && &&&char szClassName[]=&MainWClass&;
& & WNDCLASSEX
& & wndclass.cbSize=sizeof(wndclass);
& & wndclass.style=CS_HREDRAW|CS_VREDRAW;
& & wndclass.lpfnWndProc=MainWndP
& & wndclass.cbClsExtra=0;
& & wndclass.cbWndExtra=0;
& & wndclass.hInstance=hI
& & wndclass.hIcon=::LoadIcon(NULL,IDI_APPLICATION);
& & wndclass.hCursor=::LoadCursor(NULL,IDC_ARROW);
& & wndclass.hbrbackground=(HBRUSH)::GetStockObject(WHITE_BRUSH);
& & wndclass.lpszMenuName=NULL;
& & wndclass.lpszClassName=szClassN
& & wndclass.hIconSm=NULL;
& & ::RegisterClassEx(&wndclass);
& & HWND hwnd=::CreateWindowEx(0,szClassName,&My first Window!&,WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);
& & if(hwnd==NULL)
& && &&&::MessageBox(NULL,&创建窗口出错!&,&error&,MB_OK);
& && &&&return -1;
& & ::ShowWindow(hwnd,nCmdShow);
& & ::UpdateWindow(hwnd);
& & while(::GetMessage(&msg,NULL,0,0))
& && &&&::TranslateMessage(&msg);
& && &&&::DispatchMessage(&msg);
& & return msg.wP
//以下为消息处理函数:
LRESULT _stdcall WndProc(HWND hWnd,UNIT message,WPARAM wParam,LPARAM lParam)
#define SEGMENTS 500
#define PI 3.1415926
& & PAINTSTRUCT
& & int cxClient,cyC
& & POINT pt[SEGMENTS];
& & switch(message)
& & case WM_PAINT:
& && &&&hdc=::BeginPaint(hWnd,&ps);
& && &&&::GetClientRect(hWnd,&rt);
& && &&&cxClient=rt.right-rt.
& && &&&cyClient=rt.bottom-rt.
& && &&&::MoveToEx(hdc,0,cyClient/2,NULL);
& && &&&::LineTo(hdc,cxClient,cyClient/2);
& && &&&for(i=0;i&SEGMENTS;i++)
& && && && &pt.x=cxClient*i/SEGMENTS;
& && && && &pt.y=(int)((cyClient/2)*(1-sin(2*PI*i/SEGMENTS)));
& && &&&::Polyline(hdc,pt,SEGMENTS);
& && &&&::EndPaint(hWnd,&ps);
& & case WM_DESTROY:
& && &&&::PostQuitMessage(0);
& & return ::DefWindowProc(hWnd,message,wParam,lParam);
===========================
以下为调试信息:
--------------------Configuration: a - Win32 Debug--------------------
Compiling...
C:\my works\a\a.cpp(4) : error C2143: syntax error : missing ';' before '__stdcall'
C:\my works\a\a.cpp(4) : error C2501: 'LRESULT' : missing storage-class or type specifiers
C:\my works\a\a.cpp(4) : error C2065: 'HWND' : undeclared identifier
C:\my works\a\a.cpp(4) : error C2065: 'UNIT' : undeclared identifier
C:\my works\a\a.cpp(4) : error C2065: 'WPARAM' : undeclared identifier
C:\my works\a\a.cpp(4) : error C2065: 'LPARAM' : undeclared identifier
d:\program files\microsoft visual studio\vc98\include\excpt.h(36) : error C2448: '&Unknown&' : function-style initializer appears to be a function definition
d:\program files\microsoft visual studio\vc98\include\excpt.h(36) : fatal error C1004: unexpected end of file found
Error executing cl.exe.
a.obj - 8 error(s), 0 warning(s)
在线时间0 小时相册日志分享好友UID3617帖子主题精华2积分4266阅读权限10最后登录威望2069 点金钱3411 金币存款0 金币新贡献0 点注册时间
西农书童, 积分 4266, 距离下一级还需 -3666 积分
帖子积分4266
你写的是SDK的程序
wndclass.lpfnWndProc=MainWndP
这个应该写的是消息循环函数的名字WndProc
LRESULT _stdcall WndProc(HWND,UNIT,WPARAM,LPARAM)&&//消息处理函数声明
写在#include 后面
还要加分号
问题太多了
在线时间0 小时相册日志分享好友UID3617帖子主题精华2积分4266阅读权限10最后登录威望2069 点金钱3411 金币存款0 金币新贡献0 点注册时间
西农书童, 积分 4266, 距离下一级还需 -3666 积分
帖子积分4266
干脆我贴一个SDK的经典教程你看看吧
在线时间0 小时相册日志分享好友UID32638帖子主题精华1积分1048阅读权限10最后登录威望399 点金钱3316 金币存款0 金币新贡献0 点注册时间
西农小生, 积分 1048, 距离下一级还需 -748 积分
帖子积分1048
是啊 同意菠菜说的&&起码INCLUDE应该放在函数声明前面嘛,要不然这些类型都是未定义,就出现undeclared identifier错误了
在线时间5 小时相册日志分享好友UID3197帖子主题精华4积分5791阅读权限200最后登录威望2567 点金钱14346 金币存款0 金币新贡献0 点注册时间
紫幻-翼-羽
帖子积分5791
LRESULT _stdcall WndProc(HWND,UNIT,WPARAM,LPARAM)&&//消息处理函数声明
写在#include 后面呵呵,很不好意思~~~贴的时候没有注意,现眼了~~~~
在线时间5 小时相册日志分享好友UID3197帖子主题精华4积分5791阅读权限200最后登录威望2567 点金钱14346 金币存款0 金币新贡献0 点注册时间
紫幻-翼-羽
帖子积分5791
现在呢?哪儿的问题?
[box=white]#include &stdafx.h&
#include &math.h&
#include &windows.h&
#include &stdio.h&
// a.cpp : Defines the entry point for the application.
LRESULT _stdcall WndProc(HWND,UNIT,WPARAM,LPARAM);
int APIENTRY WinMain(HINSTANCE hInstance,
& && && && &&&HINSTANCE hPrevInstance,
& && && && &&&LPSTR& & lpCmdLine,
& && && && &&&int& &&&nCmdShow)
& &&&// TODO: Place code here.
& && &&&char szClassName[]=&MainWClass&;
& & WNDCLASSEX
& & wndclass.cbSize=sizeof(wndclass);
& & wndclass.style=CS_HREDRAW|CS_VREDRAW;
& & wndclass.lpfnWndProc=WndP
& & wndclass.cbClsExtra=0;
& & wndclass.cbWndExtra=0;
& & wndclass.hInstance=hI
& & wndclass.hIcon=::LoadIcon(NULL,IDI_APPLICATION);
& & wndclass.hCursor=::LoadCursor(NULL,IDC_ARROW);
& & wndclass.hbrBackground=(HBRUSH)::GetStockObject(WHITE_BRUSH);
& & wndclass.lpszMenuName=NULL;
& & wndclass.lpszClassName=szClassN
& & wndclass.hIconSm=NULL;
& & ::RegisterClassEx(&wndclass);
& & HWND hwnd=::CreateWindowEx(0,szClassName,&My first Window!&,WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);
& & if(hwnd==NULL)
& && &&&::MessageBox(NULL,&创建窗口出错!&,&error&,MB_OK);
& && &&&return -1;
& & ::ShowWindow(hwnd,nCmdShow);
& & ::UpdateWindow(hwnd);
& & while(::GetMessage(&msg,NULL,0,0))
& && &&&::TranslateMessage(&msg);
& && &&&::DispatchMessage(&msg);
& & return msg.wP
LRESULT _stdcall WndProc(HWND hWnd,UNIT message,WPARAM wParam,LPARAM lParam)
#define SEGMENTS 500
#define PI 3.1415926
& & PAINTSTRUCT
& & int cxClient,cyC
& & POINT pt[SEGMENTS];
& & switch(message)
& & case WM_PAINT:
& && &&&hdc=::BeginPaint(hWnd,&ps);
& && &&&::GetClientRect(hWnd,&rt);
& && &&&cxClient=rt.right-rt.
& && &&&cyClient=rt.bottom-rt.
& && &&&::MoveToEx(hdc,0,cyClient/2,NULL);
& && &&&::LineTo(hdc,cxClient,cyClient/2);
& && &&&for(i=0;i&SEGMENTS;i++)
& && && && &pt.x=cxClient*i/SEGMENTS;
& && && && &pt.y=(int)((cyClient/2)*(1-sin(2*PI*i/SEGMENTS)));
& && &&&::Polyline(hdc,pt,SEGMENTS);
& && &&&::EndPaint(hWnd,&ps);
& & case WM_DESTROY:
& && &&&::PostQuitMessage(0);
& & return ::DefWindowProc(hWnd,message,wParam,lParam);
--------------------Configuration: a - Win32 Debug--------------------
Compiling...
C:\my works\a\a.cpp(10) : error C2061: syntax error : identifier 'UNIT'
C:\my works\a\a.cpp(24) : error C2440: '=' : cannot convert from 'long (__stdcall *)(struct HWND__ *)' to 'long (__stdcall *)(struct HWND__ *,unsigned int,unsigned int,long)'
& && &This conversion requires a reinterpret_cast, a C-style cast or function-style cast
C:\my works\a\a.cpp(52) : error C2061: syntax error : identifier 'UNIT'
C:\my works\a\a.cpp(62) : error C2065: 'message' : undeclared identifier
C:\my works\a\a.cpp(83) : error C2065: 'wParam' : undeclared identifier
C:\my works\a\a.cpp(83) : error C2065: 'lParam' : undeclared identifier
Error executing cl.exe.
a.obj - 6 error(s), 0 warning(s)
在线时间0 小时相册日志分享好友UID32638帖子主题精华1积分1048阅读权限10最后登录威望399 点金钱3316 金币存款0 金币新贡献0 点注册时间
西农小生, 积分 1048, 距离下一级还需 -748 积分
帖子积分1048
error C2061: syntax error : identifier 'UNIT'&&写错了,UINT,unsigned int 的意思。第2个错误是由这个错误引起的
在线时间0 小时相册日志分享好友UID32638帖子主题精华1积分1048阅读权限10最后登录威望399 点金钱3316 金币存款0 金币新贡献0 点注册时间
西农小生, 积分 1048, 距离下一级还需 -748 积分
帖子积分1048
唉&&下面的错误全是由这个手误造成的。。。。
在线时间5 小时相册日志分享好友UID3197帖子主题精华4积分5791阅读权限200最后登录威望2567 点金钱14346 金币存款0 金币新贡献0 点注册时间
紫幻-翼-羽
帖子积分5791
下面是引用vikey于 14:23发表的:
error C2061: syntax error : identifier 'UNIT'&&写错了,UINT,unsigned int 的意思。第2个错误是由这个错误引起的酱子阿~~还是太粗心了~ [s:12]
在线时间5 小时相册日志分享好友UID3197帖子主题精华4积分5791阅读权限200最后登录威望2567 点金钱14346 金币存款0 金币新贡献0 点注册时间
紫幻-翼-羽
帖子积分5791
把上面的错改过来后,COMPILE完全正确,BUILD的时候有如下出错信息:
[BOX=WHITE]
--------------------Configuration: a - Win32 Debug--------------------
Compiling...
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/a.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.
a.exe - 2 error(s), 0 warning(s)
[/COLOR][/BOX]
Powered byC++常见编译链接错误即解决方法_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
C++常见编译链接错误即解决方法
上传于||文档简介
&&集​合​之​作
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩20页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢& error C2065: ‘CTL_CODE’ : undeclared identifier
error C2065: ‘CTL_CODE’ : undeclared identifier
今天写了一个简单的驱动程序和应用程序通信,在一个控制台应用程序中用DeviceIoControl,结果提示CTL_CODE没定义……
error C2065: ‘CTL_CODE’ : undeclared identifier
于是跑去MSDN找了一下DeviceIoControl,提示要Winbase.h,加上去还是不解决问题。于是又找到CTL_CODE提示要Windev.h,估计是WinCE的吧,没有这个头文件。最后只能找谷歌了,原来需要winioctl.h。
而且,需要把winioctl.h放在windows.h的后面,否则又会出现一大堆编译错误。
作者:代码疯子(Wins0n) 本站内容如无声明均属原创,转载请保留作者信息与原文链接,谢谢!
您可能对下面的文章也感兴趣:
(推荐使用
(关于作者 Wins0n/代码疯子)
免责声明:本站所有内容仅代表个人观点,无法保证100%准确,如有错误请联系指正,谢谢!
2016年十月 &(1)
2016年三月 &(1)
2016年二月 &(1)
2016年一月 &(1)
2015年十月 &(1)
2015年六月 &(2)
2015年四月 &(1)
2015年一月 &(1)
2014年十一月 &(5)
2014年十月 &(1)
2014年九月 &(1)
2014年八月 &(2)
2014年七月 &(3)
2014年六月 &(4)
2014年四月 &(1)
2014年三月 &(2)
2014年二月 &(1)
2014年一月 &(1)
2013年十二月 &(1)
2013年十一月 &(2)
2013年十月 &(2)
2013年九月 &(3)
2013年八月 &(2)
2013年七月 &(3)
2013年六月 &(2)
2013年五月 &(1)
2013年四月 &(4)
2013年三月 &(2)
2013年二月 &(1)
2013年一月 &(2)
2012年十二月 &(5)
2012年十一月 &(3)
2012年十月 &(3)
2012年九月 &(4)
2012年八月 &(4)
2012年七月 &(3)
2012年六月 &(3)
2012年五月 &(6)
2012年四月 &(4)
2012年三月 &(6)
2012年二月 &(4)
2012年一月 &(7)
2011年十二月 &(9)
2011年十一月 &(9)
2011年十月 &(13)
2011年九月 &(18)
2011年八月 &(8)
2011年七月 &(7)
2011年六月 &(16)
2011年五月 &(13)
2011年四月 &(21)
2011年三月 &(22)
2011年二月 &(15)
2011年一月 &(7)
2010年十二月 &(23)
2010年十一月 &(33)
2010年十月 &(35)
2010年九月 &(42)

我要回帖

更多关于 null undeclared 的文章

 

随机推荐