精华内容
下载资源
问答
  • 彻底告别VC

    2017-11-08 02:21:00
    第一次接触VC大概是在1998年底,当时好象是5.0版本,然后不久就转到了6.0,正式常用大概是2001年,当时拼命学VC和Delphi,学COM等。在02年底转向Unix/Linux开发,依然使用VC6.0作为编辑器,中间VC出了很多个新版本,...

    第一次接触VC大概是在1998年底,当时好象是5.0版本,然后不久就转到了6.0,正式常用大概是2001年,当时拼命学VC和Delphi,学COM等。在02年底转向Unix/Linux开发,依然使用VC6.0作为编辑器,中间VC出了很多个新版本,但基本没有使用过,直接2010年,开始使用VC2010。前段时间开始转用eclipse,一个重要原因是VC只能用盗版的,其次是VC助手总是自作主张的在行尾加上空格,导致代码过不了编程规范工具,需要采用其它办法将尾部空格删除。

    试用过一段时间的eclipse之后,确实是一个非常强的编辑器,不管是对java还是c/c++,有比vc强的,也有比vc弱的地方,但完全足够使用了,而且不存在盗版,所以依然选择eclips,并于刚才将vc2010卸载掉了,并将mooon中的vc工程文件全部删除,将完全使用eclipse替代之。


        本文转自eyjian 51CTO博客,原文链接:http://blog.51cto.com/mooon/909848,如需转载请自行联系原作者

    展开全文
  • Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies </code></pre>该提问来源于开源项目:dreamfactorysoftware...
  • Visual C++ 6.0简称VC或者VC6.0,是微软1998年推出的一款C/C++ IDE,界面友好,调试功能强大。VC6.0是一款革命性的产品,非常经典,至今仍然有很多企业和个人在使用,很多高校也将VC6.0作为C语言的教学基础,作为...

    简介

    Visual C++ 6.0简称VC或者VC6.0,是微软1998年推出的一款C/C++ IDE,界面友好,调试功能强大。VC6.0是一款革命性的产品,非常经典,至今仍然有很多企业和个人在使用,很多高校也将VC6.0作为C语言的教学基础,作为上机实验的工具。本教程中的代码,也都是在VC6.0下运行通过。

    使用

    在VC6.0下,必须先创建工程(Project),然后再添加源文件。
    一个真正的软件,往往需要多个源文件和多种资源,例如图片、视频、控件等,通常是把它们放到一个文件夹下,进行有效的管理。你可以把工程理解为这样的一个文件夹,IDE通过工程来管理这些文件。工程有不同的类型,例如开发“黑窗口”的控制台程序,需要创建Win32 Console Application工程;开发带界面的GUI程序,需要创建Win32 Application工程

    新建Win32 Console Application工程

    在这里插入图片描述
    点击确定,进入下一个界面
    在这里插入图片描述
    点击“完成”按钮完成工程的创建。
    在这里插入图片描述
    点击“确定”按钮完成工程目录的创建。

    新建源文件

    在菜单栏中选择“文件 -> 新建”,或者 Ctrl+N,弹出下面的对话框:
    在这里插入图片描述
    该步骤是向刚才创建的工程添加源文件。

    编写程序

    在工作空间中可以看到刚才创建的工程和源文件,如下图所示:
    在这里插入图片描述

    编译并运行代码

    方法一:

    在“组建”菜单中找到编译、组建和运行的功能,如下图所示:
    

    在这里插入图片描述
    方法二:使用快捷键
    在这里插入图片描述

    运行程序

    在这里插入图片描述

    显示运行结果

    在这里插入图片描述
    教程到此结束,感谢观看!
    我是程序猿 万万
    原创不易,转载请注明出处!谢谢。

    展开全文
  • VC6.0绿色免安装版

    2018-06-10 17:05:10
    Microsoft Visual C++ 6.0,简称VC6.0,是微软于1998年推出的一款C++编译器,集成了MFC 6.0,包含标准版(Standard Edition)、专业版(Professional Edition)与企业版(Enterprise Edition) [2] 。发行至今一直被...
  • VC C++ 200种 加密算法

    热门讨论 2012-11-22 11:40:14
    1998/11/19 12:10 4,187 3way.cpp 1998/12/12 14:23 1,194 3way.h 1998/01/16 23:01 314 3wayval.dat 1998/12/31 20:37 8,977 algebra.cpp 1998/12/29 23:53 7,012 algebra.h 1998/11/19 12:10 2,105 asn.cpp 1998/...
  • 微软提供的VC6例子源码,是学习VC6编程不可多得的好资料
  • Microsoft Visual C++ 6.0,简称VC6.0,是微软于1998年推出的一款C++编译器,集成了MFC 6.0,包含标准版(Standard Edition)、专业版(Professional Edition)与企业版(Enterprise Edition)。如今仍用于维护旧的...
  •  就目前而言,大部分学校教学过程中使用的是微软于1998年推出的Visual C++ 6.0(下面简称VC6)。VC6 推出的时候,流行的操作系统是Windows 95和Windows 98。而现在(2014年3月),全球范围看,Windows 用户使用最多...

    第一次写文章。大神勿喷。

    一、为什么我会选用VC08而不是VC6或者更新的版本

              就目前而言,大部分学校教学过程中使用的是微软于1998年推出的Visual C++ 6.0(下面简称VC6)。VC6 推出的时候,流行的操作系统是Windows 95和Windows 98。而现在(2014年3月),全球范围看,Windows 用户使用最多的是 Windows 7 和 Windows XP。(数据来源于 Net Application)

             VC6 在 Windows XP 下使用也会有大量的 Bug,更何况是在 Windows 7 以及 Windows 8 上面使用呢?就我自己在 Windows 7 上使用的经历,只要从VC6 的菜单上打开文件,VC6 就会停止工作(当时的解决方法是把源代码直接拖进 VC6 ),不过这并不影响使用。后来,在不断使用的过程中,发现越来越多的 Bug,例如,编译的时候不知道什么原因,编译器卡住了,然后 VC 也关不了,只能通过任务管理器结束进程的办法来结束程序。

            于是我就开始尝试其他的开发工具。我用过 Dev-C++ 和 CodeBlock,也不是说这些工具不好,只是用起来不是很习惯(可能是我不会用)。于是就在网上寻找 VC 的升级版。最先找到的是最新版的 Visual Studio Express 2013。摸着摸着就找到方法,然后编译程序,报错。然后看错误,发现使用 scanf 函数就会报错


            具体错误信息为:This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. (该函数或者变量可能不安全,考虑使用 scanf_s 函数代替。使用 _CRT_SECURE_NO_WARNINGS 禁用该信息)

            解决方法有两个:一是使用 scan_s 函数,二是把信息禁用。第一种的方法,调用了 scanf_s 函数,后来我把使用了 scanf_s 函数的源码使用 gcc 编译,不能通过。

    #include <stdio.h>
    
    int main(void)
    {
    	int a;
    	
    	scanf_s("%d", &a);
    	printf("%d", a);
    	
    	return 0;
    }


            错误信息是:undefined reference to 'scanf_s' (未定义的引用 'scanf_s')。后来在网上找了一下,scanf_s 是微软的函数,只要不在 VC 里面编译就会报错。(不过,scanf_s 函数在 c11 里面已经转正;资料来源(维基百科)

            然后我尝试了第二种方法,使用宏定义来禁止这个错误信息。于是代码经过修改如下

    // 这个宏定义一定要在 #include <stdio.h> 前面
    // 否则仍然是不能过编译
    #define _CRT_SECURE_NO_WARNINGS 0
    
    #include <stdio.h>
    
    int main(void)
    {
    	int a;
    
    	scanf("%d", &a);
    	printf("%d", a);
    
    	return 0;
    }
            然后按 F7 编译通过了


            后来觉得这样写出来的代码在 VC 以为的工具编译会遇到很多麻烦。所以决定找一个旧版本。后来便找到 VC 08 Express。虽然不是开源,但它是免费工具。摸索到编译C语言的方法以后,把刚刚在 VS 2013 里报不安全的代码编译。VS 2013里的错误在 VC 08 里面只是警告。而且 VC 08 用起来速度上比 VS 2013 快很多。于是我就开始用 VC 08。

    二、(正文)如何使用VC 08 编译 C 语言程序

             前面说了一大堆。现在才是本文的重点。使用过 VC 6 的人都知道,在 VC 6 里面运行 C 语言的程序有多种方法,最简单的,就是直接建一个源文件就可以了。但是,在VC 08 里面只是建立一个源文件,编译菜单的调试是灰色的。也就是说 VC 08 不允许直接编译 C 语言程序。

            后来也是度娘+自己摸索,找到方法。VC 08 编译的对象是一个解决方案(相当于 VC 6 中的工程文件),所以,运行之前需要建立一个解决方案。

            Step1. 建立空白解决方案

            在VC08的菜单中,依次单击:文件 -> 新建 -> 项目。然后会弹出一个新建项目的窗口。


            在左边的项目类型中,点击常规,然后右边会有一个空项目,选中,然后在下面输入项目的名称,然后点确定,一个空白的解决方案(一个空白的工程文件)就已经建好了。

            Step2. 建立一个源码文件

            项目创建完成后,VC 08 的主界面如下:


            用鼠标右键在源文件的文件夹中单击,菜单中选择添加,再点新建项。会弹出一个添加新项的对话框。


            按图上面的操作之后,点添加,代码文件就已经创建好了。接下来要做的东西写好代码,按 F5 编译运行程序。

    三、使用 VC 08 写程序的一些问题

            1. 去除烦人的 scanf 警告信息

                虽然 VC 08 不会把 scanf 函数的不安全信息视为错误,但是编译的时候仍然会显示相应的警告信息。如果代码编译的时候有错,要在错误列表中不断向下滚动鼠标才能找到错误信息。很明显很那个...

               为了解决这个问题。我们可以使用预编译头(关于预编译头的知识,在这里不详细介绍)解决这个问题。只需要在源代码的最前面添加一句

    #pragma warning(disable:4996)

               然后编译,是不是发现 scanf 函数不安全的警告信息全部屏蔽掉了?

           2. 程序一闪而过。

               可能习惯于使用 VC 6,每次程序运行以后都会暂停一下,显示控制台的内容。而 VC 08 则没有这样的设计。解决这个问题的方法有两种。第一种,就是使用 Ctrl + F5 运行程序(这个是只运行,不调试)。第二种,是在 main 函数的尾部通过代码进行暂停程序。(我个人多使用后者)

              

    #pragma warning(disable:4996)
    
    #include <stdio.h>
    #include <stdlib.h>
    
    int main(void)
    {
    	int a;
    
    	scanf("%d", &a);
    	printf("%d", a);
    
    	// 此句代码就是暂停程序执行
    	// system() 函数在 stdlib.h 头文件中,使用前请先 include
     	system("pause");
    
    	return 0;
    }
             程序正常运行。到达 system("pause") 语句,整个程序暂停执行,并输出一句“按任意键继续...”(可能在不同系统中会有不同的输出)


            使用 VC 08 差不多一年,觉得 VC 08 也挺好用了。最近实验课发现自己已经不会用 VC 6 了。至于好用与否,则是根据个人习惯了。

    展开全文
  • 用于解决VB VF VC程序,因为没有运行库无法运行的情况。 1998-05-28 10:19 74,960 ADVPACK.DLL 1999-03-08 12:50 147,728 asycfilt.dll 2000-03-28 16:58 22,288 comcat.dll 2010-05-14 22:39 0 dir.txt 2000-05-27...
  • VC单实例运行

    2010-12-24 21:43:00
    //SingleInstanceApp.cpp:headerfile////CWinAppwithsingle-instancesupport////Copyright(C)1997,1998GiancarloIovino(giancarlo@saria.com)//Allrightsreserved.Maynotbesoldforprofit....
    // SingleInstanceApp.cpp : header file
    //
    // CWinApp with single-instance support
    //
    // Copyright (C) 1997, 1998 Giancarlo Iovino (giancarlo@saria.com)
    // All rights reserved. May not be sold for profit.
    //
    // Thanks to Kevin Lussier for the base idea.
    //
    // This code was developed for MFC Programmers SourceBook
    // (http://www.codeguru.com)
    //

    #ifndef __AFXWIN_H__
        
    #error include 'stdafx.h' before including this file for PCH
    #endif

    #include 
    "resource.h"       // main symbols

    /////
    // CSingleInstanceApp:
    //

    class CSingleInstanceApp : public CWinApp
    {
    public:
        
    // Construction/Destruction
        CSingleInstanceApp();
        
    ~CSingleInstanceApp();

        
    // Operations
        BOOL CheckSingleInstance(UINT nID);
        CString GetClassName() 
    const;

    protected:
        HANDLE m_hMutex;
        CString m_strClassName;
    };


    /////

     

     

    ExpandedBlockStart.gif代码
    // SingleInstanceApp.cpp : implementation file
    //
    // CWinApp with single-instance support
    //
    // Copyright (C) 1997, 1998 Giancarlo Iovino (giancarlo@saria.com)
    // All rights reserved. May not be sold for profit.
    //
    // Thanks to Kevin Lussier for the base idea.
    //
    // This code was developed for MFC Programmers SourceBook
    // (http://www.codeguru.com)
    //

    #include 
    "stdafx.h"
    #include 
    "SingleInstanceApp.h"
    #define _AFX_NO_OLE_SUPPORT
    #include 
    <../mfc/src/afximpl.h>

    CSingleInstanceApp::CSingleInstanceApp()
    {
        
    // Set our default values
        m_hMutex = NULL;
    }

    CSingleInstanceApp::
    ~CSingleInstanceApp()
    {
        
    // Release the mutex
        if ( m_hMutex != NULL ) {
            ReleaseMutex( m_hMutex );
        }
    }

    BOOL CSingleInstanceApp::CheckSingleInstance(UINT nID) {
        CString strFullString;

        
    // Generate a synthetic name for this class using the
        
    // AfxRegisterWndClass convention
        HINSTANCE hInst = AfxGetInstanceHandle();
        UINT nClassStyle 
    = CS_DBLCLKS;    
        HCURSOR hCursor 
    = LoadCursor(IDC_ARROW );
        HICON    hIcon 
    = LoadIcon(MAKEINTRESOURCE( nID ) );    

        LPCTSTR lpstrAppName 
    = AfxGetAppName();
        ASSERT(lpstrAppName 
    != NULL);

        
    if (hCursor == NULL && hIcon == NULL)
            m_strClassName.Format(_T(
    "%s:%x:%x"), lpstrAppName,
                (UINT)hInst, nClassStyle);
        
    else
            m_strClassName.Format(_T(
    "%s:%x:%x:%x:%x"), lpstrAppName,
                (UINT)hInst, nClassStyle, (UINT)hCursor, (UINT)NULL);
        
        
    // Create the mutex with the class name
        m_hMutex = CreateMutex(NULL, FALSE, m_strClassName);
        
    // Check for errors
        if ( GetLastError() == ERROR_ALREADY_EXISTS ) {
            
    // Reset our mutex handle (just in case)
            m_hMutex = NULL;
            
    // The mutex already exists: an instance is already
            
    // running. Find the app window and bring it to foreground
            HWND hWnd = FindWindowEx(NULL, NULL, m_strClassName, NULL);
            
    if ( hWnd != NULL ) {
                ShowWindow( hWnd, SW_RESTORE );
                BringWindowToTop( hWnd );
                SetForegroundWindow( hWnd );
            }
        
            
    // Return failure
            return FALSE;
        }

        
    // Register the unique window class name
        WNDCLASS wndclass;    
        ZeroMemory(
    &wndclass, sizeof(WNDCLASS));

        wndclass.style 
    = nClassStyle;
        wndclass.lpfnWndProc 
    = AfxWndProc;
        wndclass.hInstance 
    = hInst;
        wndclass.hIcon 
    = hIcon; 
        wndclass.hCursor 
    = hCursor;
        wndclass.hbrBackground 
    = NULL;
        wndclass.lpszMenuName 
    = NULL;
        wndclass.lpszClassName 
    = m_strClassName; // The class name
        
        
    // Use AfxRegisterClass to register the class, exit if it fails
        if(!AfxRegisterClass(&wndclass)) {
            AfxMessageBox( _T(
    "Failed to register window class!"), MB_ICONSTOP | MB_OK );
            
    // Return failure
            return FALSE;
        }

        
    // Return success
        return TRUE;
    }

    CString CSingleInstanceApp::GetClassName() 
    const
    {
        
    return m_strClassName;
    }

     

     

    使用:

    调用 #include "SingleInstanceApp.h"

    class CTestSingleApp : public CSingleInstanceApp 继承

     

    ExpandedBlockStart.gif代码
    BOOL CTestSingleApp::InitInstance()
    {
        AfxEnableControlContainer();

        
    //判断单例运行
        BOOL bSingleInstance = CheckSingleInstance(IDR_MAINFRAME);    

        
    // Standard initialization
        
    // If you are not using these features and wish to reduce the size
        
    //  of your final executable, you should remove from the following
        
    //  the specific initialization routines you do not need.

    #ifdef _AFXDLL
        Enable3dControls();            
    // Call this when using MFC in a shared DLL
    #else
        Enable3dControlsStatic();    
    // Call this when linking to MFC statically
    #endif

        
    // Change the registry key under which our settings are stored.
        
    // TODO: You should modify this string to be something appropriate
        
    // such as the name of your company or organization.
        SetRegistryKey(_T("Local AppWizard-Generated Applications"));

        LoadStdProfileSettings();  
    // Load standard INI file options (including MRU)

        
    // Register the application's document templates.  Document templates
        
    //  serve as the connection between documents, frame windows and views.

        CSingleDocTemplate
    * pDocTemplate;
        pDocTemplate 
    = new CSingleDocTemplate(
            IDR_MAINFRAME,
            RUNTIME_CLASS(CTestSingleDoc),
            RUNTIME_CLASS(CMainFrame),       
    // main SDI frame window
            RUNTIME_CLASS(CTestSingleView));
        AddDocTemplate(pDocTemplate);

        
    // Parse command line for standard shell commands, DDE, file open
        CCommandLineInfo cmdInfo;
        ParseCommandLine(cmdInfo);

        
    //保证单例子
        if (!bSingleInstance) {
            AfxMessageBox(
    "此程序已运行!");
            
    return FALSE;
        }

        
    // Dispatch commands specified on the command line
        if (!ProcessShellCommand(cmdInfo))
            
    return FALSE;

        
    // The one and only window has been initialized, so show and update it.
        m_pMainWnd->ShowWindow(SW_SHOW);
        m_pMainWnd
    ->UpdateWindow();

        
    return TRUE;
    }

     

     

     代码下载:http://files.cnblogs.com/kenter/TestSingle.zip

    转载于:https://www.cnblogs.com/kenter/archive/2010/12/24/1916363.html

    展开全文
  • 如何用VC 6.0 打开Sln的工程文件?

    万次阅读 2012-12-27 11:37:48
    如何用VC 6.0 打开Sln的工程文件?在解答这一问题之前,要弄清楚 DSW 文件与 SLN 文件的定义和关系。 1.DSW 文件是什么呢?... VC6.0 是1998年推出的,与现在的微软可视化编程环境已经算是比较老的了
  • VC下的函数地址

    2007-10-17 09:52:00
    VC下的函数地址 最近突然有一位同事问我关于虚拟继承(virtual inheritance)的问题,我记得在《虚拟与多型》(繁体版,1998年)里读到过,也许当时读的匆忙,一知半解的,所以现在也答不清楚。于是,我又拿起这...
  • <免费>vc6.0完整版.zip

    2020-03-11 16:59:32
    一起学习啦,不要啥积分哦。 老师大多数都是推荐这个,也很...毕竟1998年的了,过去二十二年,软件比我年龄还大哈。 不过我用这个软件主要是应付老师的, 因为这个人性化不是那么的强,主要初学的时候很推荐这个哈。
  • VC6.0+MFC类库参考手册中文完整文本可复制可搜索版 pdf格式,分为上下两册,每册又分为2本,共4本5612页。 资料是1998年出版的,所以最新的函数可以参考微软官方网站。
  • 中国的风险投资业(以下简称vc),从1998年“中国也有风险投资?”这样的疑问中走过了10年,如今已经是世界上仅次于美国的vc大国。根据科技部提供的数据,目前中国境内有360家vc投资机构,拥有超过660亿元的投资规模。...
  • WinIo.dll源码及VC演示程序 // ---------------------------------------------------- // // WinIo v2.0 // // Direct Hardware Access Under Windows 9x/NT/2000/XP // // Copyright 1998-2002 Yariv Kaplan // //...
  • 详情请查看博文http://blog.csdn.net/tianxiayijia1998/article/details/44980617
  • SDK在VC下的设置

    千次阅读 2014-01-07 09:46:24
    1. SDK和API的概念 请参考... 2. Visual Studio的SDK Visual Studio 6.0自带的SDK是1998年的,目录为C:/Program Files/Microsoft Visual Studio/VC98/,这里简记为VS6SDKDIR。 以
  • VC串口通信(3)

    2014-03-25 20:02:07
    工业控制领域(如DCS系统),经常涉及到串行通信问题。为了实现微机和单片机之间的数据交换,人们用各种不同方法实现串行通信,如DOS下采用汇编语言或C语言,但在Windows 环境下却存在...VC++6.0是微软公司于1998年推
  • VC6是1998年发售的,离现在有14年了。在14年里,Intel与AMD的CPU都换了好几套微架构了,VC6编译器很可能无法充分发挥它们的性能。而且,从2003年AMD推出了64位处理器开始,现在64位系统越来越普及,我们希望测试64位...
  • VC6.0是微软1998年发布的,是一款很经典的编辑器,然而它有几个很常见的bug,比如, .cpp文件打不开,智能提示出现异常,这里介绍“VC6.0的ClassView里不能显示类或成员变量”问题的解决方法。详细步骤如下:  1) ...
  • VC6.0是微软1998年公布的,是一款非常经典的编辑器。然而它有几个非经常见的bug,比方, .cpp文件打不开,智能提示出现异常。这里介绍“VC6.0的ClassView里不能显示类或成员变量”问题的解决方法。具体过程例如以下...

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 176
精华内容 70
关键字:

vc1998