推 steve1012: 因為第一個引數要const char* 你傳char當然不行12/30 04:00
→ steve1012: 孤狗printf 文件寫得蠻清楚的...查error message也很多12/30 04:01
→ steve1012: 說明...12/30 04:01
→ poyenc: 沒看過 CS50 不過看心得好像很淺.. 你對函式的認知是?12/30 10:36
真的很淺XDD C語言的部分data type還有一些基本的控制流跟條件判斷上完就沒了
小弟是寫python的沒上過計概想說補點基礎才看CS50
函式不是接受一個或多個input然後return一個output嗎
推 alan23273850: printf 只能吃字串,不能吃字元12/30 14:26
好奇為什麼是吃字串
昨天稍微額外看了一下pointer的概念
printf的輸入const char *format不是應該吃一個位置嗎
而那個位置的類型是字元
怎麼樣都跟字串連不上吧
※ 編輯: nekosgr93 (223.137.177.17), 12/30/2018 16:31:55
※ 編輯: nekosgr93 (223.137.177.17), 12/30/2018 16:33:41
推 tomsawyer: 不是傳pointer嗎(?)12/30 17:56
推 LPH66: 建議你去找本 C 語言初學的書從頭看12/30 20:16
→ LPH66: C 和 python 有一些語言設計上的不同12/30 20:17
好的
會再找相關教材補充
畢竟我也蠻想學C的
※ 編輯: nekosgr93 (223.137.177.17), 12/30/2018 20:23:06
→ b0920075: 稍微看過是能期待懂什麼?完整看完好好描述自己的問題 12/31 11:00
→ b0920075: ,這樣別人要講要教也比較好教 12/31 11:00
→ poyenc: 簡單說, 函式收的參數型別是固定的, 如果它吃的是 type* 12/31 17:37
→ poyenc: 引數就會需要用 & 對 type 變數取址得來, 另外也可以讓 12/31 17:38
→ poyenc: 陣列 decay 而來, string literal 就是 char 陣列 (但隱藏 12/31 17:39
→ poyenc: 最後的 '\0' 字元, "hello" 陣列長度是 6, 當成字串長則是12/31 17:41
→ poyenc: 5, 你要把變數當成指標丟肯定是不行的12/31 17:42
不好意思因為剛看完課程寫作業就遇到問題 課程上也沒特別提到才會問這種奇怪的問題X
D(畢竟CS50的課程目標也不是教C語言)
昨天翻了一整天孤狗大概是弄懂發生什麼事了
會在從基礎開始看的
感謝大家願意回答小弟的蠢問題
※ 編輯: nekosgr93 (223.137.177.17), 12/31/2018 19:50:48
推 kaneson: 函式可以傳多種type參數是後來才發明的,中間有很多演進 01/09 14:49
→ kaneson: 才到python那樣任意傳。還有printf本身也是新手最早要接 01/09 14:49
→ kaneson: 觸到而有一定基礎才能理解的函式 01/09 14:49
→ MaxHaru: 'a'等於0x61, 是一個常數, "a"等於0x61,0x00.. 01/14 17:00