-->
Free C textbook.
-->
-->
Welcome,
Guest
. Please
login
or
register
.
Did you miss your
activation email
?
1 Hour
1 Day
1 Week
1 Month
Forever
Login with username, password and session length
-->
Home
About
Team
Rules
Stats
Status
Sitemap
Chat
Downloads
Forum
News
Our Projects
Major Community Projects
Recent Posts
Unread Posts
Replies
Tools
SourceCoder3
Other Things...
Omnimaga Radio
TI-83 Plus ASM File Unsquisher
Z80 Conversion Tools
IES TI File Editor
Free RAM areas
Comprehensive Getkeyr table
URL Shortener
Online Axe Tilemap Editor
Help
Contact Us
Change Request
Report Issue/Bug
Team
Articles
Members
View the memberlist
Search For Members
Buddies
Login
Register
Omnimaga
»
Forum
»
General Discussion
»
Technology and Development
»
Computer Programming
»
Free C textbook.
« previous
next »
Print
Pages: [
1
]
Go Down
Author
Topic: Free C textbook. (Read 4937 times)
0 Members and 1 Guest are viewing this topic.
Happybobjr
James Oldiges
LV11
Super Veteran (Next: 3000)
Posts: 2325
Rating: +128/-20
Howdy :)
Free C textbook.
«
on:
November 24, 2014, 02:58:52 am »
Hey guys, my professor wrote his own textbook for C and I find it very good for beginning/intermediate C programmers.
Some chapters are lacking, but it does an extremely good job compared to other books I've seen.
https://drive.google.com/file/d/0B9EzLx4Z9geMWEZMdUNrZDhzck0
On Page 437, it talks about Huffman Compression, and i thought it was cool and applicable
Logged
School: East Central High School
Axe: 1.0.0
TI-84 +SE ||| OS: 2.53 MP (patched) ||| Version: "M"
TI-Nspire ||| Lent out, and never returned
____________________________________________________________
chickendude
LV8
Addict (Next: 1000)
Posts: 817
Rating: +90/-1
Pro-Riot Squad
Re: Free C textbook.
«
Reply #1 on:
November 24, 2014, 03:19:46 am »
The old Site du Zéro had a really nice C tutorial (in French). The name of the site has changed since then, something like OpenClass, but i think you can still download the book.
Thanks for the link, though, Happybobjr. All Google stuff's blocked here but maybe i can hop on a VPN sometime and pick it up.
Logged
harold
LV5
Advanced (Next: 300)
Posts: 226
Rating: +41/-3
Re: Free C textbook.
«
Reply #2 on:
November 24, 2014, 03:34:46 am »
I had a look and it makes the same mistake as almost everyone does when discussing Huffman decoding, it only mentions tree-walking.
Tree-walking is a great way to intuitively show that decoding is possible at all, but it's a bad way to actually do it, and actually the code for table-based decoding is shorted and simpler (once you understand the idea).
Can we send in suggestions?
nice book overall.
Logged
Blog about bitmath:
bitmath.blogspot.nl
Check the
haroldbot thread
for the supported commands and syntax.
You can use haroldbot from
this website
.
Happybobjr
James Oldiges
LV11
Super Veteran (Next: 3000)
Posts: 2325
Rating: +128/-20
Howdy :)
Re: Free C textbook.
«
Reply #3 on:
November 24, 2014, 03:47:03 am »
Ya! Feel free to send suggestions.
(we get half a point extra cred for corrections etc
)
Remember this is class specific though, so a suggestion, rather than correction, may not be applicable.
Logged
School: East Central High School
Axe: 1.0.0
TI-84 +SE ||| OS: 2.53 MP (patched) ||| Version: "M"
TI-Nspire ||| Lent out, and never returned
____________________________________________________________
Aspiring
LV3
Member (Next: 100)
Posts: 81
Rating: +5/-0
The only source of knowledge is experience-Einsten
Re: Free C textbook.
«
Reply #4 on:
November 24, 2014, 06:55:15 pm »
I think I found a typo. In 21.3, it is written: "The third argument is the name of a function." I think this should be something like "The third argument is the pointer to a function."
Logged
Juju
Incredibly sexy mare
Coder Of Tomorrow
LV13
Extreme Addict (Next: 9001)
Posts: 5730
Rating: +500/-19
Weird programmer
Re: Free C textbook.
«
Reply #5 on:
November 25, 2014, 09:49:34 am »
I like the goals your teacher is trying to achieve here. You have to not only master C, but also master the right tools used to compile C. It's all about efficiency and everyone will like you for your efficient methods.
Logged
Remember the day the walrus started to fly...
I finally cleared
my sig
after 4 years you're happy now?
This signature is ridiculously large you've been warned.
The cute mare that used to be in my avatar is Yuki Kagayaki, you can follow her on
Facebook
and
Tumblr
.
Print
Pages: [
1
]
Go Up
« previous
next »
Omnimaga
»
Forum
»
General Discussion
»
Technology and Development
»
Computer Programming
»
Free C textbook.
\n\t\t\t\t\t\t\t\t\t
<' + '/div>\n\t\t\t\t\t\t\t\t\t
%body%<' + '/textarea>
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
Max characters: 20000; characters remaining:
...<' + '/span><' + '/span>
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t<' + '/div>\n\t\t\t\t\t\t\t\t<' + '/div>', sTemplateSubjectEdit: '
', sTemplateBodyNormal: '%body%', sTemplateSubjectNormal: '
%subject%<' + '/a>', sTemplateTopSubject: 'Topic: %subject% (Read 4937 times)', sErrorBorderStyle: '1px solid red' }); aJumpTo[aJumpTo.length] = new JumpTo({ sContainerId: "display_jump_to", sJumpToTemplate: "
Jump to:<" + "/label> %dropdown_list%", iCurBoardId: 22, iCurBoardChildLevel: 1, sCurBoardName: "Computer Programming", sBoardChildLevelIndicator: "==", sBoardPrefix: "=> ", sCatSeparator: "-----------------------------", sCatPrefix: "", sGoButtonLabel: "go" }); aIconLists[aIconLists.length] = new IconList({ sBackReference: "aIconLists[" + aIconLists.length + "]", sIconIdPrefix: "msg_icon_", sScriptUrl: smf_scripturl, bShowModify: true, iBoardId: 22, iTopicId: 21720, sSessionId: "4ac6a302268e8385a84d7f343a9735ed", sSessionVar: "ee0ff2125834", sLabelIconList: "Message Icon", sBoxBackground: "transparent", sBoxBackgroundHover: "#ffffff", iBoxBorderWidthHover: 1, sBoxBorderColorHover: "#adadad" , sContainerBackground: "#ffffff", sContainerBorder: "1px solid #adadad", sItemBorder: "1px solid #ffffff", sItemBorderHover: "1px dotted gray", sItemBackground: "transparent", sItemBackgroundHover: "#e0e0f0" }); } function tick2() { if (typeof(document.forms.quickModForm) != "undefined") { calcCharLeft2(); setTimeout("tick2()", 1000); } else setTimeout("tick2()", 800); } function message_onkeyup() { if (typeof(document.forms.quickModForm) != "undefined" && typeof(document.forms.quickModForm.message) != "undefined") { document.forms.quickModForm.message.onkeyup = function onkeyup(event) { storeCaret(this); calcCharLeft2(); }; } else setTimeout("message_onkeyup()", 800); } message_onkeyup(); function calcCharLeft2() { var maxLength = 20000; var oldEditor = "", currentEditor = document.forms.quickModForm.message.value; if (!document.getElementById("editorLeft2")) return; if (oldEditor != currentEditor) { oldEditor = currentEditor; if (currentEditor.replace(/\r/, "").length > maxLength) document.forms.quickModForm.message.value = currentEditor.replace(/\r/, "").substring(0, maxLength); currentEditor = document.forms.quickModForm.message.value.replace(/\r/, ""); } setInnerHTML(document.getElementById("editorLeft2"), maxLength - currentEditor.length); } // ]]>-->