作者zesiva (呼拉拉)
看板C_and_CPP
標題[問題] 關於memset語法跟用法的問題
時間Tue Apr 7 15:17:13 2009
memset在 cpp-reference上面的宣告是
void* memset( void* buffer, int ch, size_t count );
中間那個是int, 但是memset的用法卻是把每個byte設成ch的值
我的問題是既然是每個byte都會設成ch, 那為什麼不乾脆把ch設成char呢
而要把ch設成int呢 是有什麼原因嗎?
還有一個問題是 如果想看c的standard function如何定義的, 要去哪邊看呢
謝謝大家
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.134.26.131
1F:推 gozha:unsigned 跟 signed 的問題? 04/07 16:23
2F:推 sunneo:為了讓堆疊對齊 所以讓最小參數是int吧 04/07 23:02
3F:→ sunneo:看ctype判斷char跟stdio的fputc/putchar都是以int為基本 04/07 23:03
4F:推 Fenikso:ctype那堆function用int是為了裝下所有字元加EOF 04/07 23:32
5F:→ Fenikso:memset我猜是K&R C留下來的遺跡@__@ 04/07 23:32