① VC編程中遇到的窗口大小和窗口客戶區大小的問題
用 GetWindowRect 得到的是包括非客戶區的矩形(非客戶區含上邊條,下邊條,左邊條,右邊條,非客戶區左邊的左頂點,非客戶區右邊的右頂點,左下角的左下角頂點,右下角的右下角頂點,和客戶區)。GetClientRect得到的僅是客戶區的矩形。桌面上可供應用程序使用的區域是,除出系統佔用區之外的應用程序可用區,系統佔用的包括任務欄所佔用的部分,應用程序要用WS_EX_TPMOST屬性才可以擴展到這部分區域,應用程序可用區,可以用getsystemmetrics函數來查詢,具體可以參考:《WIN32程序員參考大全》全書共五冊,最好是下載有目錄的那個pdf版。CSDN中去下載,注意下有目錄的。關於窗口的一般內容其中都有,要操作和繪制非客戶區,就要搜索網路,關鍵字一般可以是:VC 自繪 非客戶區 標題欄等。
② 璋佽兘鎻愪緵鐐笴璇璦鐨勮瘯棰樼粰鎴戱紝鏈濂借兘鏈夌瓟妗堢殑錛岄潪甯告劅璋錛
浠ヤ笅鏄涓浜 C 璇璦鐨勮瘯棰橈紝姣忎釜璇曢橀兘闄勫甫鏈夌瓟妗堛傚笇鏈涜兘澶熷府鍔╁埌浣犮
1銆佺紪鍐欎竴涓紼嬪簭錛屼粠鍛戒護琛屽弬鏁頒腑璇誨彇涓や釜鏁存暟錛岃$畻瀹冧滑鐨勫拰騫惰緭鍑虹粨鏋溿
絳旀堬細
#include <stdio.h>
int main(int argc, char *argv[]) {
if (argc != 3) {
printf("Usage: %s <int1> <int2>
", argv[0]);
return 1;
}
int x = atoi(argv[1]);
int y = atoi(argv[2]);
printf("%d + %d = %d
", x, y, x + y);
return 0;
}
2銆佺紪鍐欎竴涓鍑芥暟錛屾帴鍙椾袱涓鍙傛暟 a 鍜 b錛岃繑鍥炲畠浠鐨勬渶澶у叕綰︽暟銆
絳旀堬細
int gcd(int a, int b) {
if (b == 0) {
return a;
} else {
return gcd(b, a % b);
}
}
3銆佺紪鍐欎竴涓紼嬪簭錛屼粠鏍囧噯杈撳叆涓璇誨彇涓涓瀛楃︿覆錛屽皢鍏朵腑鐨勫ぇ鍐欏瓧姣嶈漿鎹涓哄皬鍐欏瓧姣嶏紝騫惰緭鍑鴻漿鎹㈠悗鐨勫瓧絎︿覆銆
絳旀堬細
#include <stdio.h>
#include <ctype.h>
int main() {
char c;
while ((c = getchar()) != EOF) {
putchar(tolower(c));
}
return 0;
}
4銆佺紪鍐欎竴涓紼嬪簭錛屼粠鏍囧噯杈撳叆涓璇誨彇涓涓瀛楃︿覆錛屽垽鏂鍏朵腑鏄鍚︽湁閲嶅嶇殑瀛楃︼紝騫惰緭鍑虹粨鏋溿
絳旀堬細
#include <stdio.h>
#include <stdbool.h>
bool has_plicate_chars(const char *str) {
bool seen[256] = { false };
while (*str != '