风气网

如何用c语言程序获取计算机信息

2024-09-20来自:本站整理
c语言是计算机的什么语言是高级还是低级?


C语言是一种高级计算机语言
C++相当于是C的升级版,能够兼容C语言
在ANSI标准化后,C语言的标准在一段相当的时间内都保持不变,尽管C++继续在改进。(实际上,Normative Amendment1在1995年已经开发了一个新的C语言版本。但是这个版本很少为人所知。)标准在90年代才经历了改进,这就是ISO9899:1999(1999年出版)。这个版本就是通常提及的C99。它被ANSI于2000年3月采用。

开机密码不能获取哦。用户名很简单。只要用个GetUserName这个API就行了。详细的代码我给你看看:

//#include "stdafx.h"
//#include "GetSysInfo.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
CWinApp theApp;
using namespace std;
// 获取CPU相关信息
void GetCPUInfo()
{
CString CPU;
SYSTEM_INFO systeminfo;
// 获取CPU型号
GetSystemInfo (&systeminfo);
switch (systeminfo.dwProcessorType)
{
case PROCESSOR_INTEL_386: // 386系列
CPU = "PROCESSOR_INTEL_386";
break;
case PROCESSOR_INTEL_486: // 486系列
CPU = "PROCESSOR_INTEL_486";
break;
case PROCESSOR_INTEL_PENTIUM: // 奔腾系列
CPU = "PROCESSOR_INTEL_PENTIUM";
break;
case PROCESSOR_MIPS_R4000:
CPU = "PROCESSOR_MIPS_R4000";
break;
case PROCESSOR_HITACHI_SH3:
CPU = "PROCESSOR_HITACHI_SH3";
break;
case PROCESSOR_HITACHI_SH4:
CPU = "PROCESSOR_HITACHI_SH4";
break;
case PROCESSOR_STRONGARM:
CPU  = "PROCESSOR_STRONGARM";
break;
case PROCESSOR_ARM720:
CPU = "PROCESSOR_ARM720";
break;
default:
CPU = "Unknown Type";
break;
}
printf("

CPU 型号:%s

",CPU);

}
// 获取内存信息
void GetMemoryInfo()
{
CString MemoryTotal; // 总内存大小
CString MemoryAvail; // 可用内存大小


MEMORYSTATUS memory;
memory.dwLength =sizeof(memory); //初始化
// 获取内存信息
GlobalMemoryStatus(&memory);
MemoryTotal.Format(_T("%d Mb"),int(memory.dwTotalPhys/1024/1024));
MemoryAvail.Format(_T("%d Mb"),int(memory.dwAvailPhys/1024/1024));
printf("主机总内存:%s

",MemoryTotal);
printf("主机可用内存:%s

",MemoryAvail);
}

// 获取磁盘信息
void GetDiskInfo()
{
DWORD sector,byte,cluster,free;
long int freespace,totalspace;
UINT type;
char name;
CString strname;
// 循环检测A~Z, 找到磁盘即输出
//0—未知盘、1—不存在、2—可移动磁盘、3—固定磁盘
    //4—网络磁盘、5—CD-ROM、6—内存虚拟盘
for (name='A';name<='Z';name++) 
{
strname.Format(_T("%c:"),name);
type = GetDriveType(strname); //获得磁盘类型
switch(type)
{
case 0:
printf("未知类型磁盘: %s",strname);
break;
case 2:
printf("可移动类型磁盘: %s",strname);
break;
case 3:
printf("固定磁盘: %s",strname);
break;
case 4:
printf("网络映射磁盘: %s",strname);
break;
case 5:
printf("光驱: %s",strname);
break;
case 6:
printf("内存虚拟磁盘: %s",strname);
break;
default:
break;
}
if(type != 1)
{
// 获取磁盘空间信息
GetDiskFreeSpace(strname,&sector,&byte,&free,&cluster);
// 磁盘总大小
totalspace = int(cluster)*byte*sector/1024/1024;
// 磁盘可用空间大小
freespace = int(free)*byte*sector/1024/1024; 
printf(" 总大小 %d Mb",totalspace);
printf(" 可用空间 %d Mb",freespace);
printf("
");
}
}

}
int _t main(int argc, TCHAR* argv[], TCHAR* envp[])
{
int nRetCode = 0;

// initialize MFC and print and error on failure
if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0))
{
// TODO: change error code to suit your needs
cerr << _T("Fatal Error: MFC initialization failed") << endl;
nRetCode = 1;
}
else
{
// TODO: code your application's behavior here.
// 输出CPU信息
GetCPUInfo();
// 输出内存信息
GetMemoryInfo();
// 输出磁盘信息
GetDiskInfo();
}

return nRetCode;
}


其中获取了系统的很多相关信息。像cpu内存硬盘用户名等等。你可以参考一下,呵呵。



如果只要读CPU温度或者GPU温度或硬盘参数这种就直接调用WMI接口API就可以,
但其实像“鲁大师”这种程序是自己重写ring0接口程序来获得所有硬件接口信息的,所以需要对底层驱动有很深的了解。
用一个开源的Lib实现了对所有硬件信息的读取,全部用Ring0完成,C++要用的话需要用Managed C++。

C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

这个没有。。。有的话还有隐私吗?

  • [窦魏枫15997804769] - 谁能用c语言编个小程序呀.exe...交计算机作品.(5月分交).(好的QB...
    易逃轻::很出名的汉诺塔问题,呵呵,相当经典的!!!include "stdio.h"void main(){ void hanoi(int n,char one,char two,char three);int m;printf("input the number of disks:");scanf_s("%d",&m);printf("the step to moveing %d disks:\\n",m);hanoi(m,'A','B','C');} void hanoi...
  • [窦魏枫15997804769] - 计算机能不能直接执行用C语言编写的源程序
    易逃轻::不能。C语言也属于高级语言的范畴,即人可以阅读。但是计算机不理解“如果”和“for”是什么意思,所以编译器需要把高级语言命令翻译成计算机可以理解的0和1指令,这样计算机就可以执行它们。用高级语言编写的程序称为“源程序”。用二进制代码表示的程序称为“目标程序”。用汇编语言编写的程序称为汇编程序...
  • [窦魏枫15997804769] - c语言软件用什么比较好?
    易逃轻::C语言基本上是大学计算机及其相关专业在大一上学期就会开的一门课程。 C语言作为一门起源比较早的编程语言,可以编程的手机软件和电脑软件非常多,下面我简单介绍几个,感兴趣的朋友可以自己尝试一下: 手机软件 1.C语言编译器:这是手机上的一个C语言编程软件,可以直接在手机上编译运行C语言程序,下面我简单介绍一下这个...
  • [窦魏枫15997804769] - C语言程序代码怎么运行?
    易逃轻::c语言怎么运行代码1、c语言运行方式如下:上机输入和编译源程序。通过键盘向计算机输入程序,最后将此源程序以文件形式存放在文件夹内,文件用.c作为后缀,生成源程序文件。2、软件:c语言0第一首先打开编辑代码的软件。再定义一个int类型的变量a。第二然后设置变量a的设置为0,再用for语句进行循环。第...
  • [窦魏枫15997804769] - 用c语言编写的程序需要用什么程序翻译后计算机才能识别
    易逃轻::编译程序 用c语言编写的程序需要用“编译程序”翻译后计算机才能识别。用C语言编写的程序必须翻译成可执行程序后才能够在计算机上运行,在此过程中必须通过编译程序进行处理。
  • [窦魏枫15997804769] - c语言计算机能直接执行的程序是
    易逃轻::D啊 老大!!!~~~源程序->编译成目标文件->经过连接生成EXE文件,被操作系统以PE的格式载入。
  • [窦魏枫15997804769] - 在32位计算机中中运行一个C语言程序,有以下变量的初值,写出它的机器...
    易逃轻::include <stdio.h>int main(void){ int x=-32768; char c='@'; short y=522; printf("%d <--> %08X\\n",x,x); printf("%c <--> %02X\\n",c,c); printf("%hd <--> %04X\\n",y,y); return 0;} ...
  • [窦魏枫15997804769] - C语言怎么编写计算机程序
    易逃轻::代码如下:int a = 0;int b = 0;printf("a = ");scanf("%d", &a);printf("\\n");printf("b = ");scanf("%d", &b);printf("\\n");printf("a + b = %d", a+b);代码效果图:运行结果图:
  • [窦魏枫15997804769] - 如何用C语言编写一个计算机程序,实现任意输入三个数a,b,c,将他们按照...
    易逃轻::呵呵 楼上的好复杂哦 我来写个简单点的吧 供楼主参考 不过以后要多自己练习 这样才会真正学到东西 我的思路是:设一个Max变量,用于存放最到值,先比较a和b,谁大就把谁存放到max中,然后再拿max和c比较,要是c小,则输出max,要是c大,则把c存放到max中并输出!void main(){ ...
  • [窦魏枫15997804769] - 拜求计算机大神教一下用C语言打这个程序
    易逃轻::include <stdio.h> void main(){ int num = 0;int quan = 0;double sum = 0;double price[] = {2.98,4.50,9.98,4.49,6.87};while(scanf("%d",&num)){ if(num == -1){ break;} scanf("%d",&quan);if(num < 1 || num > 5){ printf("Invalid product code:%d\\n\\...
  • 首页 热门
    返回顶部
    风记网