C文件中引用CPP文件时的问题
unzip.c
中引用validate.cpp
文件中的函数来进行epub
纠错,产生的问题:
1.
validate.cpp
中使用iostream.h,
但是C
中没有这个文件
,所以产生的错误:
2>
正在编译...
2>unzip.c
2>D:\Program
Files\VC\include\cstdio(25) : error C2143:
语法错误:
缺少“{
”(
在“:
”的前面)
2>D:\Program
Files\VC\include\cstdio(25) : error C2059:
语法错误:
“:
”
2>D:\Program
Files\VC\include\cstdio(25) : error C2143:
语法错误:
缺少“{
”(
在“:
”的前面)
2>D:\Program
Files\VC\include\cstdio(25) : error C2059:
语法错误:
“:
”
。。。
2>D:\Program
Files\VC\include\cstdlib(21) : fatal error C1003:
错误计数超过100
;正在停止编译
只要将iostream.h
换成stdio.h
即可。但是这样又带来一个问题,validate.cpp
中用到了memcpy
,这个是在string.h
中,stdio.h
中没有,所以在validate.cpp
中#include <string.h>
2.
validate.cpp
中使用了引用,C
中没有引用,所以将引用改为指针即
可。错误提示:
missing “(“ before &,
提示&
的问题
3.
改好后新的错误:
>unzip.c
2>e:\Hanvon_DRMSDK_1_0_0\DRMSDK\source\Validate.h(46)
: error C2061:
语法错误:
标识符“ReadEndOfCenDirRecord
”
2>e:\Hanvon_DRMSDK_1_0_0\DRMSDK\source\Validate.h(46)
: error C2059:
语法错误:
“;
”
2>e:\Hanvon_DRMSDK_1_0_0\DRMSDK\source\Validate.h(46)
: error C2059:
语法错误:
“类型”
这个错误时由于函数声明
bool
ReadEndOfCenDirRecord
(FILE
*
m_fp
, EndCentralDirectoryRecord
*
m_endCenDirRecord
);
而C
中是没有bool
型的
,所以改成int
型,相应的程序内部return
值做修改。
4.
编译好还是有错误:
2>unzip.c
2>e:\Hanvon_DRMSDK_1_0_0\DRMSDK\source\Validate.h(46)
: error C2143:
语法错误:
缺少“)
”(
在“*
”的前面)
2>e:\Hanvon_DRMSDK_1_0_0\DRMSDK\sou
相关文档:
C/C++/VC++ 变量命名规则
是VC++的么?
4.变量风格
变量尽量采用匈牙利命名法,同时结合VC的原则;一般情况下,变量的取名方式为:
<scope><prefix><qualifier>
有关项目的全局变量必须用g_开始,类成员变量用m_,局部变量若函数较大则可考虑用l_用以显示说明其是局部变量。
前缀
类型
示例
g_
......
va系列宏的用法的一般步骤:
vsptr(char *format, ...) //切记此处的格式
{
va_list argptr;
va_start(argptr, format); //使得argptr指向以format开头的存储空间
va_arg(argptr, type); //取传递的参数
......
在Notes 的C/S 编程中,经常需要对一个集合中的对象进行遍历处理,这时如果能显示一个进度条指示当前处理进程,就比较直观形象,客户界面也比较友好。
1、声明API函数
'声明API函数
Declare Function NEMProgressBegin Lib&nbs ......
C程序是由一组或是变量或是函数的外部对象组成的。 函数是一个自我包含的完成一定相关功能的执行代码段。下面小编和大家分享下C语言中的函数。
1. fclose函数
fclose函数的功能是关闭一个流,其用法是:int fclose(FILE *stream); 程序例子如下:
#include <string.h& ......
C程序是由一组或是变量或是函数的外部对象组成的。 函数是一个自我包含的完成一定相关功能的执行代码段。下面小编和大家分享下C语言中的函数。
1. kbhit函数
kbhit函数是检查当前按下的键,其用法为:int kbhit(void);程序例子如下:
#include <conio.h>
int main(void)
{
c ......