zoukankan      html  css  js  c++  java
  • VC学习笔记常见错误调试

    fatal error C1083

    问题描述:无法打开包括文件:“iostream.h”: No such file or directory
    解决方案:应该写成<iostream>
    • 在VC2010上面采用C++风格的头文件而不是C风格的头文件,除非你是在用C。
    • 所有的C++库在std命名空间中定义:using namespace std;
    • 标准头文件:#include <some_file.h>
    • 用户自定义头文件:#include "my_file.h"
    C头文件
    可以继续使用
    C++ 
    (C++98后取消)
    C++ 98 ("c"开头,去掉".h"后缀)
    建议使用
    stdio.h 
    iostream.h
    <iostream>
        <cstdlib>
        <cstdio> 
    assert.h   <cassert>

    C2144

    问题描述:int should be preceded by :

    解决方案:这个是从C#转C++遇到的一个问题。

    C# 语法是这样的:
    public int read();
    c++语法是这样的:
    public:
    int read();
     

    error C2664

    问题描述:“MessageBoxW”: 不能将参数 2 从“const char [17]”转换“LPCWSTR” 

    解决方案:字符集问题,项目-->Properties-->Configuration Properties-->Character Set=Unicode

    warning C4996

    问题描述:warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
    解决方案:这是因为VC从2005版本开始,微软引入了一系列的安全加强的函数来增强CRT(C运行时),这里对应的是strcpy_s。_s意为safe的意思,同样的道理,strcat也是同样。因此要解决这个问题,我们可以用strcpy_s来替换strcpy,但是注意strcpy_s并非所有编译器都提供,因此如果要跨编译器,请采用错误信息中所提示的方式,定义_CRT_SECURE_NO_WARNINGS宏来掩耳盗铃吧。另外注意并非所有的加强函数都是在屁股后面加_s,比如stricmp这个字符串比较函数的增强版名字是_stricmp。下面,用strcpy_s来更改程序:
     

    error LNK2001

    问题描述:unresolved external symbol _mainCRTStartup 
    解决方案:没有定义main函数

    error LNK2019

    问题描述:无法解析的外部符号 __imp__InternetGetCookieA@16 ,该符号在函数 "void __cdecl MySend(unsigned int)" (?MySend@@YAXI@Z) 中被引用(其他类似的错误也一样)
    解决方案:应该是你用到了一个库函数,但是你的项目没有把它的库加进去。项目 --> 属性 --> 链接器 -->  输入 --> 附近依赖项 填入你使用到的库
  • 相关阅读:
    入浅出MySQL 8.0 lock_sys锁相关优化 原创 腾讯数据库技术 腾讯数据库技术 2021-03-08
    以模型为中心,携程契约系统的演进
    bs
    外观模式
    设计接口时严格区分map、list,方便前端使用。
    t
    The HyperText Transfer Protocol (HTTP) 504
    入理解 epoll 原创 冯志明 Qunar技术沙龙 2021-03-10
    一次XSS和CSRF的组合拳进攻 (CSRF+JSON)
    当程序员具备了抽象思维 从码农到工匠 阿里巴巴中间件 2021-03-09
  • 原文地址:https://www.cnblogs.com/dalianliyan/p/3053687.html
Copyright © 2011-2022 走看看