OC中控制台日誌列印

2022-03-17 19:02:48 字數 1547 閱讀 6429

%@ 物件

%d,%i 整型 (%i的老寫法)

%hd 短整型

%ld , %lld 長整型

%u 無符整型

%f 浮點型和double型

%0.2f 精度浮點數,只保留兩位小數

%o 八進位制

%zu size_t

%p 指標位址

%e float/double (科學計算)

%g float/double (科學技術法)

%x:    為32位的無符號整型數(unsigned int),列印使用數字0-9的十六進製制,小寫a-f;

%x:    為32位的無符號整型數(unsigned int),列印使用數字0-9的十六進製制,大寫a-f;

%s char *  字串

%.*s pascal字串

%c char 字元

%c unichar

%lf 64位double

%lu sizeof(i)記憶體中所佔位元組數

列印cgrect : nslog(@"%@",nsstringfromcgrect(somecgrect)); 或者cfshow(nsstringfromcgrect(somecgrect));

列印cgsize: nslog(@"%@",nsstringfromcgsize(somecg size ));

如題所述:如何將字串轉化成浮點型,且精確度為小數點後12位

例如:字串@「121.12343434343421」

解決辦法:

[nsstring stringwithformat:@"%.12f",[str floatvalue]];

將字串轉化為數字,且保留小數點後的12位數

double tt = [[nsstring stringwithformat:@"%.12f",[@"121.12343434343421" doublevalue]]doublevalue];

nslog(@"%f",tt);

elf.student.age = @([self.agetf.text intvalue]);

學生的年齡是乙個nsnumber 型別 ,將nsstring 型別轉化為對應的型別。

// 以release模式編譯的程式不會用nslog輸出,而以debug模式編譯的程式將執行nslog的全部功能。

#ifndef __optimize__

# define nslog(...) nslog(__va_args__)

#else

# define nslog(...)

#endif

或#ifdef __optimize__

#define nslog(...) 

#endif

這個**的魔術在於:release模式通常會定義 __optimize__,debug模式不會。

將這段**放在標頭檔案當中,就可以放心的使用nslog了!

把這些**放到*prefix.pch中最省事。可以把這段巨集定義放到乙個標頭檔案中,再把這個標頭檔案包含到*prefix.pch中。

JS控制台列印

今天在看jq的 時看到這樣乙個 console.warn nothing selected,can t validate,returning nothing 單獨執行,居然在控制台列印出了nothing selected,can t validate,returning nothing,豁然開朗,既...

python列印日誌到控制台並將日誌寫入檔案

import sys import logging logger logging.getlogger log logger.setlevel logging.debug 呼叫模組時,如果錯誤引用,比如多次呼叫,每次會新增handler,造成重複日誌,這邊每次都移除掉所有的handler,後面在重新新...

nodejs之控制台列印

直接輸出引號中的資訊 onsole.log log資訊 依次輸出所有字串 console.log s first second 輸出結果 first second 將物件轉換為普通字串後執行 console.log s guoyansi 輸出結果 guoyansi 將字串作為數值進行轉換 conso...