作者jacky1989 ()
看板C_and_CPP
標題[問題] 關於malloc與include問題
時間Fri Dec 2 01:04:54 2016
開發平台(Platform): (Ex: Win10, Linux, ...)
VS2010
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
C
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
std. library
問題(Question):
1.在做字串malloc時,是否需要預留最後一個結束位元?('\0')
EX: tmp=(char *)malloc(5);
sprintf(tmp,"abcde"); //此做法正確嗎?
2.我相信大家都有使用自己設計的函式庫的習慣,那以前學的是要把自己的c file放進去一起做compile
如果今天我在程式裡面直接用include的方式是否可以?
EX:
#include<stdlib.h>
#include<stdio.h>
#include"self_lib.cpp" //這是可以的嗎?
以上兩個問題,感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.231.49.211
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1480611897.A.F3F.html
1F:推 LPH66: 1. 要, 因為例如 "abcde" 佔的大小就是 6 byte 12/02 01:05
2F:→ LPH66: 2. 語法不阻止你, 但最好不要, 尤其你又放在同專案編譯 12/02 01:06
3F:→ LPH66: 這會造成連結時會發現兩個同名東西會不知道怎麼辦 12/02 01:06
好的,感謝
※ 編輯: jacky1989 (61.231.49.211), 12/02/2016 01:07:10
※ 編輯: jacky1989 (61.231.49.211), 12/02/2016 01:08:29
4F:推 b0920075: 1.off by one 12/02 07:45
5F:推 ilms49898723: 2. 用#ifndef包起來不就解決了? 12/02 21:31