#include <stdio.h>
int my_atoi(char *pstr) {
int return_i = 0;
int i_sign = 1;
if(pstr == NULL) {
pstr == NULL;
return 0;
}
while(*pstr == ' ')
pstr++;
if(*pstr == '-')
i_sign = -1;
if(*pstr == '-' || *pstr == '+')
pstr++;
while(*pstr <= '9' && *pstr >= '0') {
return_i = return_i * 10 + (*pstr - '0');
pstr++;
}
return_i = return_i * i_sign;
return return_i;
}
int main(void)
{
char arr[5] = {"12343"};
int i;
i = my_atoi(arr);
printf("i = %d\n",i);
return 0;
}
#include <stdio.h>
#include <string.h>
char *my_strcpy(char *str1,const char *str2)
{
char *tempstr = str1;
if(str1 == NULL || str2 == NULL)
return NULL;
if(str1 == str2)
return str1;
while((*str1++ = *str2++) != '\0');
return tempstr;
}
int main(void)
{
char arr[6] = {"hello"};
char buf[4] = {"111"};
//memset(buf,0,3);
printf("%s\n",buf);
my_strcpy(buf,arr);
printf("%s\n",buf);
return 0;
}
mvc
model
view
contorller
工廠模式
觀察者模式
代理模式
信號與槽
第一種:自己編寫槽函數(shù)
使用connect函數(shù)進行連接信號與槽
connect(誰發(fā)射蚤蔓,發(fā)射什么信號心包,誰接受,接受完了執(zhí)行那個函數(shù))
第二種方式:點擊控件掷倔,點擊使用轉(zhuǎn)到槽功能,IDE會自動幫我們進行綁定
第三種:使用on_控件名_信號名()形式,編寫槽函數(shù)冯袍,會自動綁定
第四種:使用信號與槽編輯器犬钢,但是只能使用系統(tǒng)的信號與系統(tǒng)的槽
自定義信號:
只需要寫出信號的聲明即可苍鲜,void signalName();
發(fā)射信號,emit signalName();
需要手動使用connect函數(shù)進行信號與槽的綁定
可以使用信號與槽進行參數(shù)的傳遞玷犹。