初学者的问题,请教各位大侠一个小问题

原创 2017年01月19日 09:05:10
本人在看c++ primer入门书,其中有个extern的关键字,代码如下,为什么第一段代码能编译通过,而第二段代码不能编译通过?



// 第一段
#include "stdafx.h"
const char *strs = "hello";
extern "C" void *malloc( int );
extern "C" char *strcpy( char *, const char * );
extern "C" int printf( const char *, ... );
extern "C" int exit( int );
extern "C" int strlen( const char * );


int _tmain(int argc, _TCHAR* argv[]){
char* s = (char *)malloc( strlen(strs)+1 );
strcpy( s, strs );
printf( "%s, world\n", s );
exit( 0 );
}



// 第二段
#include "stdafx.h"
#include <cstdlib>  // 和第一个不同的
const char *strs = "hello";
extern "C" void *malloc( int );
extern "C" char *strcpy( char *, const char * );
extern "C" int printf( const char *, ... );
extern "C" int exit( int );
extern "C" int strlen( const char * );


int _tmain(int argc, _TCHAR* argv[]){
char* s = (char *)malloc( strlen(strs)+1 );
strcpy( s, strs );
printf( "%s, world\n", s );
exit( 0 );
}


编译器提示什么 Error 1 error C2733: second C linkage of overloaded function 'malloc' not allowed e:\workspace\vc\ccc\ccc\ccc.cpp 97
Warning 2 warning C4273: 'printf' : inconsistent dll linkage e:\workspace\vc\ccc\ccc\ccc.cpp 99
Error 3 error C2556: 'int exit(int)' : overloaded function differs only by return type from 'void exit(int)' e:\workspace\vc\ccc\ccc\ccc.cpp 100
Error 4 error C2371: 'exit' : redefinition; different basic types e:\workspace\vc\ccc\ccc\ccc.cpp 100
Error 5 error C3861: 'exit': identifier not found e:\workspace\vc\ccc\ccc\ccc.cpp 108



相关文章推荐

Eplan_p8初学者的的若干个小问题

  • 2014年09月10日 21:39
  • 390KB
  • 下载

Eplan p8初学者的的48个小问题

  • 2013年04月12日 06:36
  • 35KB
  • 下载

困扰nginx初学者的两个小问题

通过在群里大家的讨论,我总结了两点问题,很多初学者都问过: 1. ngixn事件处理中关于active和ready的问题 2. ngx_connection_t与ngx_http_connec...

android camera 开发遇见的问题,请教大侠

// 这是个 android图片拍摄程序 // 调不出虚拟仪器上的camera,请大侠们给予指点 package AndroidCamera.camera; import java.io...

eclipse使用中的一个小问题

  • 2013年06月16日 00:28
  • 286KB
  • 下载

access中的一个小问题

  • 2009年05月21日 19:10
  • 31KB
  • 下载

部署ArcGIS API for JS时出的一个小问题及解决过程

前几天部署ArcGIS API for JS时出了点小问题,我照Install notes for the ArcGIS API for JavaScript™.html上给的步骤把文件放进了Tomc...

Struts2 中的一个小问题

  • 2009年03月07日 09:12
  • 20KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:初学者的问题,请教各位大侠一个小问题
举报原因:
原因补充:

(最多只允许输入30个字)