傳智播客C/C++:尹成C基礎(chǔ)
標(biāo)簽(空格分隔): 傳智播客 C
Day2
1.編輯呵俏、編譯霸奕、鏈接三者的關(guān)系
- 1.編輯->源代碼(.c)
- 2.編譯->目標(biāo)文件(.obj)
把源代碼翻譯成機(jī)器語(yǔ)言(僅僅是源代碼的翻譯吭敢,不能運(yùn)行)- 3.鏈接->可執(zhí)行文件(.out/.exe)
相關(guān)庫(kù)文件全部鏈接胚膊、組裝在一起眷蜓,體積比obj大很多
2.轉(zhuǎn)義字符
- \n:換行
- \a:發(fā)出聲音
#include <windows.h> //sleep(1000)=等待1s
while(1){
printf("\a")分瘾;
system("start calc");
sleep(1000);
}
//實(shí)現(xiàn)不停的彈窗口并且發(fā)出聲音
* \b:退一格 * \t:制表符 * \r:讓光標(biāo)回到開(kāi)頭
3.常量與變量
3.1直接修改內(nèi)存
int num = 10;//設(shè)置變量num
const cnum = 15;//設(shè)置常量num
printf("num=%p,cnum=%p",&num,&cnum);//獲取num的內(nèi)存地址
//直接在內(nèi)存中修改num,cum的值
printf("\nnum=%d,cnum=%d", num, cnum);
//打印出的結(jié)果是修改的值,常量變量都能在內(nèi)存中修改吁系,
//常量只是C語(yǔ)言語(yǔ)法的規(guī)定德召,對(duì)內(nèi)存來(lái)說(shuō)不存在區(qū)別
3.2變量?jī)?nèi)存機(jī)制(利用匯編直接在內(nèi)存中相加)
void main()
{
//用匯編實(shí)現(xiàn)加法
int a = 5;
int b = 10;
int c = 0;
_asm //匯編效率高白魂,還可以裝逼
{
mov ecx,a
add ecx,b
mov c,ecx
}
printf("c=%d", c);
getchar();
}
3.3標(biāo)識(shí)符
定義:程序中用于表示變量、常量氏捞、函數(shù)的字符
規(guī)則:可以是數(shù)字碧聪,字母和下劃線,不能數(shù)字開(kāi)頭液茎,變量與函數(shù)可以重名逞姿,只要沒(méi)有引用這個(gè)函數(shù),如printf捆等。
3.4整數(shù)變量的意義
#define _CRT_SECURE_NO_WARNINGS//關(guān)閉安全檢查
#include <stdio.h>
#include <stdlib.h>
void main()
{
int x = 4;
printf("我有%d個(gè)對(duì)象", x);
char str[50];
sprintf(str, "for /L %%i in (1,1,%d) do start notepad", x);
system(str);
system("pause");
}
/*
for /l %%i in (1,1,5) do start notepad 是cmd命令滞造,
sprintf:sprintf的作用是將一個(gè)格式化的字符串輸出到一個(gè)目的字符串中,而printf是將一個(gè)格式化的字符串輸出到屏幕栋烤。
*/
4.自己的IDE
4.1MFC初體驗(yàn)
1.修改Doc文件谒养,去掉文本編輯器的格式化字符串
CRichEditDoc::m_bRTF = FALSE
2.窗口-資源視圖添加新控件實(shí)現(xiàn)編譯
:x86
if not exist "%~dp0bin\vcvars32.bat" goto missing
call "%~dp0bin\vcvars32.bat" %2 %3
cd C:\Users\Administrator\Documents\堅(jiān)果云\傳智播客c\Day2\C語(yǔ)言IDE
cl 1.c
1.exe
goto :SetVisualStudioVersion
//注意這里插入的三個(gè)語(yǔ)句的位置,call之前明郭,會(huì)找不到頭文件买窟,goto之后,程序就跳到別的地方薯定,不會(huì)執(zhí)行后面的代碼
4.2中文編程
將C語(yǔ)言的所有關(guān)鍵字全部封裝在一個(gè)頭文件里始绍,用#define設(shè)置別名,實(shí)現(xiàn)所謂的中文編程
#include <stdio.h>
#include <stdlib.h>
#define 終端 break
#define 字符 char
#define 恒定 const
#define 整數(shù) int
#define 返回 return
······
#include <stdio.h>
#include <stdlib.h>
#define 整數(shù) int
#define 恒定 const
#define 主函數(shù) main
#define 參數(shù)開(kāi)始 (
#define 參數(shù)結(jié)束 )
#define 語(yǔ)句結(jié)束 ;
#define 空值 void
#define 函數(shù)開(kāi)始 {
#define 函數(shù)結(jié)束 }
#define 打印 printf
#define 系統(tǒng)調(diào)用 system
空值 主函數(shù) 參數(shù)開(kāi)始 參數(shù)結(jié)束
函數(shù)開(kāi)始
打印 參數(shù)開(kāi)始"Hello World\n"參數(shù)結(jié)束 語(yǔ)句結(jié)束
系統(tǒng)調(diào)用 參數(shù)開(kāi)始 "pause" 參數(shù)結(jié)束 語(yǔ)句結(jié)束
函數(shù)結(jié)束