為了提高代碼的可讀性,推薦都是多以函數(shù)實(shí)現(xiàn)功能。函數(shù)本身需要傳入返回?cái)?shù)據(jù),那么aes加密函數(shù)就會把傳入的數(shù)據(jù)加密,然后通過返回值返回到變量里面。我們假設(shè)aes函數(shù)名字叫aes,那么我們就這樣調(diào)用:需要加密的數(shù)據(jù)是a。加密結(jié)果是result
創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、網(wǎng)站建設(shè)、蛟河網(wǎng)絡(luò)推廣、重慶小程序開發(fā)公司、蛟河網(wǎng)絡(luò)營銷、蛟河企業(yè)策劃、蛟河品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供蛟河建站搭建服務(wù),24小時(shí)服務(wù)熱線:18982081108,官方網(wǎng)址:www.chinadenli.net
int a = 000;
String result = aes(a);
result便是加密后的a
實(shí)際代碼會很復(fù)雜但是結(jié)構(gòu)是這樣的。
這個(gè)需要相關(guān)的庫以及API。
給你一個(gè)獲取cpu信息的函數(shù):
DWORD MyCPUSpeed()
{
BSTR bstrMyCpuName=NULL;
BSTR bstrMyPropName = NULL;
VARIANT pVal;
char szText[256];
int nCpuNum=0;
DWORD dwCpuSpeed=0;
IWbemClassObject *pCpuInst=NULL;
IWbemQualifierSet* pQualSet = NULL;
bstrMyPropName = SysAllocString(L"CurrentClockSpeed");
if(bstrMyPropName == NULL)
{
return dwCpuSpeed;
}
while(1)
{
memset(szText,0,sizeof(szText));
sprintf(szText,"Win32_Processor.DeviceID=\"CPU%d\"", nCpuNum);
bstrMyCpuName = _bstr_t(szText);
if(bstrMyCpuName == NULL)
{
break;
}
if(pSvc-GetObject(bstrMyCpuName, 0L, NULL, pCpuInst, NULL) != S_OK)
{
break;
}
if(pCpuInst-Get(bstrMyPropName, 0L, pVal, NULL, NULL) == S_OK)
{
nCpuNum++;
dwCpuSpeed += pVal.lVal;
}
VariantClear(pVal);
SysFreeString(bstrMyCpuName);
bstrMyCpuName = NULL;
}
if(bstrMyPropName != NULL)
{
SysFreeString(bstrMyPropName);
bstrMyPropName = NULL;
}
if(bstrMyCpuName != NULL)
{
SysFreeString(bstrMyCpuName);
bstrMyCpuName = NULL;
}
memset(szText,0,sizeof(szText));
sprintf(szText, "CPU個(gè)數(shù): %d, CPU頻率: %ld Mhz", nCpuNum, dwCpuSpeed);
cout"------------------------"szText"-------------------------"endl;
return dwCpuSpeed;
}
這個(gè)程序應(yīng)該滿足你的要求吧。
#include stdio.h
#include conio.h
int main(void)
{
while (1)
{
if (!kbhit())
printf("1");
else
{
char c = getch();
if (c == 'a')
{
putchar('2');
getch();
}
}
}
return 0;
}
stat(取得文件狀態(tài))
相關(guān)函數(shù) fstat,lstat,chmod,chown,readlink,utime
表頭文件 #include sys/stat.h
#include unistd.h
定義函數(shù) int stat(const char * file_name,struct stat *buf);
函數(shù)說明 stat()用來將參數(shù)file_name所指的文件狀態(tài),復(fù)制到參數(shù)buf所指的結(jié)構(gòu)中。
下面是struct stat內(nèi)各參數(shù)的說明
struct stat
{
dev_t st_dev; /*device*/
ino_t st_ino; /*inode*/
mode_t st_mode; /*protection*/
nlink_t st_nlink; /*number of hard links */
uid_t st_uid; /*user ID of owner*/
gid_t st_gid; /*group ID of owner*/
dev_t st_rdev; /*device type */
off_t st_size; /*total size, in bytes*/
unsigned long st_blksize; /*blocksize for filesystem I/O */
unsigned long st_blocks; /*number of blocks allocated*/
time_t st_atime; /* time of lastaccess*/
time_t st_mtime; /* time of last modification */
time_t st_ctime; /* time of last change */
};
st_dev 文件的設(shè)備編號
st_ino 文件的i-node
st_mode 文件的類型和存取的權(quán)限
st_nlink 連到該文件的硬連接數(shù)目,剛建立的文件值為1。
st_uid 文件所有者的用戶識別碼
st_gid 文件所有者的組識別碼
st_rdev 若此文件為裝置設(shè)備文件,則為其設(shè)備編號
st_size 文件大小,以字節(jié)計(jì)算
st_blksize 文件系統(tǒng)的I/O 緩沖區(qū)大小。
st_blcoks 占用文件區(qū)塊的個(gè)數(shù),每一區(qū)塊大小為512 個(gè)字節(jié)。
st_atime 文件最近一次被存取或被執(zhí)行的時(shí)間,一般只有在用mknod、utime、read、write與tructate時(shí)改變。
st_mtime 文件最后一次被修改的時(shí)間,一般只有在用mknod、utime和write時(shí)才會改變
st_ctime i-node最近一次被更改的時(shí)間,此參數(shù)會在文件所有者、組、權(quán)限被更改時(shí)更新先前所描述的st_mode 則定義了下列數(shù)種情況
S_IFMT 0170000 文件類型的位遮罩
S_IFSOCK 0140000 scoket
S_IFLNK 0120000 符號連接
S_IFREG 0100000 一般文件
S_IFBLK 0060000 區(qū)塊裝置
S_IFDIR 0040000 目錄
S_IFCHR 0020000 字符裝置
S_IFIFO 0010000 先進(jìn)先出
S_ISUID 04000 文件的(set user-id on execution)位
S_ISGID 02000 文件的(set group-id on execution)位
S_ISVTX 01000 文件的sticky位
S_IRUSR(S_IREAD) 00400 文件所有者具可讀取權(quán)限
S_IWUSR(S_IWRITE)00200 文件所有者具可寫入權(quán)限
S_IXUSR(S_IEXEC) 00100 文件所有者具可執(zhí)行權(quán)限
S_IRGRP 00040 用戶組具可讀取權(quán)限
S_IWGRP 00020 用戶組具可寫入權(quán)限
S_IXGRP 00010 用戶組具可執(zhí)行權(quán)限
S_IROTH 00004 其他用戶具可讀取權(quán)限
S_IWOTH 00002 其他用戶具可寫入權(quán)限
S_IXOTH 00001 其他用戶具可執(zhí)行權(quán)限
上述的文件類型在POSIX 中定義了檢查這些類型的宏定義
S_ISLNK (st_mode) 判斷是否為符號連接
S_ISREG (st_mode) 是否為一般文件
S_ISDIR (st_mode)是否為目錄
S_ISCHR (st_mode)是否為字符裝置文件
S_ISBLK (s3e) 是否為先進(jìn)先出
S_ISSOCK (st_mode) 是否為socket
若一目錄具有sticky 位(S_ISVTX),則表示在此目錄下的文件只能被該文件所有者、此目錄所有者或root來刪除或改名。
返回值 執(zhí)行成功則返回0,失敗返回-1,錯(cuò)誤代碼存于errno
錯(cuò)誤代碼 ENOENT 參數(shù)file_name指定的文件不存在
ENOTDIR 路徑中的目錄存在但卻非真正的目錄
ELOOP 欲打開的文件有過多符號連接問題,上限為16符號連接
EFAULT 參數(shù)buf為無效指針,指向無法存在的內(nèi)存空間
EACCESS 存取文件時(shí)被拒絕
ENOMEM 核心內(nèi)存不足
ENAMETOOLONG 參數(shù)file_name的路徑名稱太長
范例 #include sys/stat.h
#include unistd.h
mian()
{
struct stat buf;
stat (“/etc/passwd”,buf);
printf(“/etc/passwd file size = %d /n”,buf.st_size);
}
名稱欄目:c語言獲取信息函數(shù) c語言獲取函數(shù)地址
網(wǎng)頁URL:http://www.chinadenli.net/article40/dosigho.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、App設(shè)計(jì)、網(wǎng)站設(shè)計(jì)、外貿(mào)建站、商城網(wǎng)站、虛擬主機(jī)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)