用C 寫了個Convert類,僅供新手學習

2021-06-09 13:46:07 字數 4503 閱讀 2620

convert.h

class convert

~convert(){};

//是否小寫

static bool islower(int c);

//是否大寫

static bool isupper(int c);

//轉換成小寫

static int tolower(int c);

//轉換成大寫

static int toupper(int c);

//是否是十進位制

static bool isdecimal(int c);

//是否是二進位制

static bool isbinary(int c);

//是否是八進位制

static bool isoctal(int c);

//是否是十六進製制

static bool ishex(int c);

//計算字串長度

static int strlen(const char *str);

//查詢指定字元

static char *strchr(char *str, int c);

//查詢指定字元,忽略大小寫

static char *strchri(char *str, int c);

//查詢指定字串

static char *strstr(char *str, const char *substr);

//查詢指定字串,忽略大小寫

static char *strstri(char *str, const char *substr);

//複製字串到快取區中

static char *strcpy(char *str1, const char *str2);

//複製指定大小的字串到緩衝區中

static char *strcpyn(char *str1, const char *str2, int num);

//連線字串

static char *strcat(char *str1, const char *str2);

//比較字串

static int strcmp(char *str1, char *str2);

//比較字串,比較指定位元組

static int strncmp(char *str1, char *str2, int num);

//比較字串,忽略大小寫

static int strcmpi(char *str1, char *str2);

//比較字串,比較指定位元組,忽略大小寫

static int strncmpi(char *str1, char *str2, int num);

//32位整形轉化成字串

static int itoa(int num, char *str);

//32位無符號整形轉化成字串

static int uitoa(unsigned int num, char *str);

//字串轉化成32位整形

static int atoi(char *str);

//64位整形轉化成字串

static int i64toa(__int64 num, char *str);

//64位無符號整形轉化成字串

static int ui64toa(unsigned __int64 num, char *str);

//字串轉化成64位整形

static __int64 atoi64(char *str);

//多位元組轉化成寬字元字串

static int mbstowcs(char* ansi, wchar_t * uni, int num);

//寬字元轉化成多位元組字串

static int wcstombs(wchar_t *uni, char* ansi, int num);

};

convert.cpp

bool convert::islower(int c)

bool convert::isupper(int c)

int convert::tolower(int c)

return c;

}int convert::toupper(int c)

return c;

}bool convert::isdecimal(int c)

bool convert::isbinary(int c)

bool convert::isoctal(int c)

bool convert::ishex(int c)

int convert::strlen(const char *str)

char *convert::strchr(char *str, int c)

return null;

}char *convert::strchri(char *str, int c)

return null;

}char *convert::strstr(char *str, const char *substr)

} return null;

}char *convert::strstri(char *str, const char *substr)

} return null;

}char *convert::strcpy(char *str1, const char *str2)

str1[i] = str2[i];

return str1;

}char *convert::strcpyn(char *str1, const char *str2, int num)

str1[i] = '\0';

return str1;

}char *convert::strcat(char *str1, const char *str2)

str1[i] = str2[j];

return str1;

}int convert::strcmp(char *str1, char *str2)

int convert::strncmp(char *str1, char *str2, int num)

int convert::strcmpi(char *str1, char *str2)

int convert::strncmpi(char *str1, char *str2, int num)

int convert::itoa(int num, char *str)

else if(num < 0)

else

quotient = num;

for(; quotient; i++)

for(; i--; j++)

return j;

}int convert::uitoa(unsigned int num, char *str)

tmp[i++] = '\0';

quotient = num;

for(; quotient; i++)

for(; i--; j++)

return j;

}int convert::atoi(char *str)

for(i = bsign; str[i]; i++)

for(j = 0; j < i - 1 - bsign; j++)

for(i = bsign; str[i]; i++)

if(str[0] == '-')

return num;

}int convert::i64toa(__int64 num, char *str)

else if(num < 0)

else

quotient = num;

for(; quotient; i++)

for(; i--; j++)

return j;

}int convert::ui64toa(unsigned __int64 num, char *str)

else if(num < 0)

else

quotient = num;

for(; quotient; i++)

for(; i--; j++)

return j;

}__int64 convert::atoi64(char *str)

for(i = bsign; str[i]; i++)

for(j = 0; j < i - 1 - bsign; j++)

for(i = bsign; str[i]; i++)

if(str[0] == '-')

return num;

}int convert::mbstowcs(char* ansi, wchar_t * uni, int num)

int convert::wcstombs(wchar_t *uni, char* ansi, int num)

用c ,寫了個單鏈錶類

這幾天開始學習資料結構,今天便寫了個最簡單的單鏈表,在標頭檔案裡定義的 並且實現了自定義位置插入資料,刪除資料,查詢資料,預設新增資料功能 不知道這算不算adt呢,對於概念還不是很懂 笑 只有一點點的c基礎,寫物件導向還不是很熟悉,希望 不會很難看xd include include using s...

用C 3 0 寫了個IoC類

雖然c meta programing 的能力不夠 不過新特性還是比較爽的 用這些寫了個ioc類 挺有意思 c using system using system.collections.generic using system.linq using system.text using nunit....

用C語言寫了個公尺字旗遊戲

用c語言寫了個公尺字旗遊戲,算是初級版本吧。後續有時間的話會繼續更新,其中沒有什麼難點 就是從上到下寫出來的 好了,下面我們來看看執行後的介面 ps 第一棋手的棋子用 o 代替。第二位棋手的棋子用 x 代替 開始下棋 棋子不在範圍內,重新輸入 o贏了,遊戲結束 以下就是本次 公尺字旗 include...