VC++6.0 一个四位数(0000~9999) 分别输出各个数位的数

VC++6.0 一个四位数(0000~9999) 分别输出各个数位的数,第1张

怕越界,改成字符串来接收输入的值了,简单代码如下:

#include <stdioh>

#include <stringh>

// 判断字符串中是否为四位

bool Is4WeiShu(const char szNum)

{

    if (NULL == szNum)

        return false;

    int nLen = strlen(szNum);

    if (nLen != 4)

        return false;

    for (int i=0; i<nLen; ++i)

    {

        if (szNum[i]<'0' || szNum[i]>'9')

            return false;

    }

    return true;

}

void main()

{

    printf("请输入一个四位数(0000~9999):");

    char szBuf[256] = {0};

    scanf("%s", szBuf);

    bool bRet = Is4WeiShu(szBuf);

    if (!bRet)

    {

        printf("输入的不是四位数!\n");

        return;

    }

    const char szFlag[] = {"千", "百", "十", "个"};

    int nSize = sizeof(szFlag)/sizeof(const char);

    int nLen = strlen(szBuf);

    for (int i=0; i<nLen&&i<nSize; ++i)

    {

        printf("%s位上的数是:%c\n", szFlag[i], szBuf[i]);

    }

}

测试结果:

CString GetMacAddress()

/

    通过WMI取第一块活动网卡地址,事先需要调用过CoInitialize()初始化COM

/

{

    HRESULT hRes;

    hRes = CoInitializeSecurity(NULL, -1, NULL, NULL, RPC_C_AUTHN_LEVEL_DEFAULT,

        RPC_C_IMP_LEVEL_IMPERSONATE, NULL, EOAC_NONE, NULL);

    if (FAILED(hRes))

        return _T("");

    IWbemLocator pLoc = NULL;

    hRes = CoCreateInstance(CLSID_WbemLocator, 0, CLSCTX_INPROC_SERVER, IID_IWbemLocator, (LPVOID)&pLoc);

    if (FAILED(hRes))

        return _T("");

    IWbemServices pSvc = NULL;

    hRes = pLoc->ConnectServer(_bstr_t(L"ROOT\\CIMV2"), NULL, NULL, 0,

        NULL, 0, 0, &pSvc);

    if (FAILED(hRes))

    {

        pLoc->Release();     

        return _T("");

    }

    hRes = CoSetProxyBlanket(pSvc, RPC_C_AUTHN_WINNT, RPC_C_AUTHZ_NONE,

        NULL, RPC_C_AUTHN_LEVEL_CALL, RPC_C_IMP_LEVEL_IMPERSONATE, NULL, EOAC_DEFAULT);

    if (FAILED(hRes))

    {

        pSvc->Release();

        pLoc->Release();     

        return _T("");

    }

    IEnumWbemClassObject pEnumerator = NULL;

    hRes = pSvc->ExecQuery(_bstr_t(L"WQL"), 

        _bstr_t(L"SELECT  FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = TRUE"),

        WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY, 

        NULL, &pEnumerator);

    if (FAILED(hRes))

    {

        pSvc->Release();

        pLoc->Release();

        return _T("");

    }

    CString szMacAddress = _T("");

    while (true)

    {

        IWbemClassObject pclsObj = NULL;

        ULONG uReturn = 0;

        hRes = pEnumerator->Next(WBEM_INFINITE, 1, &pclsObj, &uReturn);

        if (FAILED(hRes) || !uReturn)

            break;

        VARIANT vtProp;

        VariantInit(&vtProp);

        if (SUCCEEDED(pclsObj->Get(L"MACAddress", 0, &vtProp, 0, 0)))

        {

            if (V_VT(&vtProp) == VT_BSTR)

            {

                szMacAddress = vtPropbstrVal;

                VariantClear(&vtProp);

                pclsObj->Release();

                break;

            }

            VariantClear(&vtProp);

        }

        pclsObj->Release();

    }

    pEnumerator->Release();

    pSvc->Release();

    pLoc->Release();

    return szMacAddress;

}

------解决方案--------------------奥,那个DLL大概在02年左右整理的好像,时间太久了,应该是不支持vsita的,楼主看看这段代码是否有用?我是拷贝来的:/  //函数名称:GetDriverInfomation  //函数功能:得到驱动器的信息  //参数1:bAlpha - BYTE型,驱动器的代号A-Z(a-z)  //参数2:iGTI_TYPE - int,将要获取的驱动器信息类型  // GDI_VOLUMENAME 得到驱动器名字  // GDI_VOLUMESERIALNUMBER 得到驱动器序列号  // GDI_VOLUMEFILESYSTEM 得到驱动器文件系统  // GDI_VOLUMETYPE 得到驱动器类型  // GDI_VOLUMESIZE 得到驱动器总大小  // GDI_VOLUMEFREESIZE 得到驱动器剩余大小  //返回值:CString型,所要得到的驱动器信息的字符串表达  //例子:得到C盘的名字GetDriverInfomation('C',GDI_VOLUMENAME)  /  #define GDI_VOLUMENAME 0  #define GDI_VOLUMESERIALNUMBER 1  #define GDI_VOLUMEFILESYSTEM 2  #define GDI_VOLUMETYPE 3  #define GDI_VOLUMESIZE 4  #define GDI_VOLUMEFREESIZE 5  CString GetDriverInfomation(BYTE bAlpha,int iGTI_TYPE)  {  CString strResult = _T("");

以上就是关于VC++6.0 一个四位数(0000~9999) 分别输出各个数位的数全部的内容,包括:VC++6.0 一个四位数(0000~9999) 分别输出各个数位的数、VC怎么获取硬件ID,CPU,硬件,网卡等、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10142937.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存