//計算某個資料夾下所有檔案的**量
nsuinteger codelinecount(nsstring *path)
//1.獲得檔案管理者
nsfilemanager *mgr = [nsfilemanager defaultmanager];
//2.判斷path是資料夾還是檔案路徑
bool dir = no; //標記是否為資料夾
//這個路徑是否存在
bool exist = [mgr fileexistsatpath:path isdirectory:&dir];
//3.如果不存在,直接返回0
if(!exist) return 0;
if (dir)
{//資料夾
//陣列中存放著當前資料夾下面的所有內容(資料夾、檔案)
nsarray *array = [mgr contentsofdirectoryatpath:path error:nil];
//記錄**行數
int count = 0;
//遍歷陣列中的檔案(夾)名
for (nsstring *filename in array)
//子檔案(夾)的全路徑
nsstring *fullpath = [nsstring stringwithformat:@"%@/%@",path, filename];
//累加每個子路徑的總行數
count += codelinecount(fullpath);
return count;
else
{//檔案
//1.判斷檔案的副檔名(全部轉化為小寫,忽略大小寫)
nsstring *extension = [[path pathextension] lowercasestring];
if (![extension isequaltostring:@"h"]
&& ![extension isequaltostring:@"m"]
&& ![extension isequaltostring:@"c"])
//檔案拓展名不是h、m、c,直接退出
return 0;
//2.載入檔案內容
nsstring *content = [nsstring stringwithcontentsoffile:path encoding:nsutf8stringencoding error:nil];
//3.將檔案內容切割成每一行
nsarray *array = [content componentsseparatedbystring:@"\n"];
//去掉父目錄
nsstring *str = [path stringbyreplacingcharactersinrange:range withstring:@""];
nslog(@"%@ ---- %ld", str, array.count);
return array.count;
OC基礎 block 字面量
block 塊語法,可以用block去儲存一段 或者封裝一段 block 實際是由c語言實現的,執行效率很高.block 實際借鑑了函式指標的語法.block 引數型別1 引數名1,引數型別2 引數名2.返回值型別 1.沒有引數,括號也不能省略 2.引數名可以省略 void myblock1 無引數...
分組卷積 計算量
import torch import torch.nn as nn 分組卷積 n,c in,h,w,c out 10,4,16,16,4 x torch.randn n,c in,h,w conv nn.conv2d c in,c out,3,1,padding 0,bias false conv...
OC 計算器 初級
inte ce end else containterview addsubview button 建立運算符號 nsarray signarr for int i 0 i 4 i 建立清除按鈕 uibutton acbutton uibutton buttonwithtype uibuttonty...