1. 程式人生 > >關於c++裡面引用標頭檔案尖括號和雙引號的使用

關於c++裡面引用標頭檔案尖括號和雙引號的使用

今天寫資料庫,因為用的是mysql自帶的c api。設計到庫的匯入和標頭檔案的匯入。

用include 引用標頭檔案時,雙引號和尖括號的區別:

1.雙引號:引用非標準庫的標頭檔案,編譯器首先在程式原始檔所在目錄查詢,如果未找到,則去系統預設目錄查詢,通常用於引用使用者自定義的標頭檔案。

2.尖擴號:只在系統預設目錄(在Linux系統中通常為/usr/include目錄)或者尖括號內的路徑查詢,通常用於引用標準庫中自帶的標頭檔案。

綜上,標準庫自帶的標頭檔案既可以用雙引號也可以用尖括號,不過習慣使用尖括號,使用者自定義的標頭檔案只能用雙引號。

一般情況下 這麼用:自己寫的用雙引號,第三方庫或者系統的庫的標頭檔案用尖括號。要不然經常會出現亂七八糟的錯誤。

我習慣用雙引號。結果今天在使用mysql的庫函式的標頭檔案的時候也用雙引號,雖然在附加依賴項裡面添加了標頭檔案的路徑,最後卻被一個找不到標頭檔案的錯誤搞暈了。

所以切記,只有自己寫的用雙引號


相關推薦

關於c++裡面引用檔案括號引號的使用

今天寫資料庫,因為用的是mysql自帶的c api。設計到庫的匯入和標頭檔案的匯入。 用include 引用標頭檔案時,雙引號和尖括號的區別: 1.雙引號:引用非標準庫的標頭檔案,編譯器首先在程式原始檔所在目錄查詢,如果未找到,則去系統預設目錄查詢,通常用於引用使

[undefine reference to...]c++ 已經引用檔案的情況編譯顯示未定義

1.仔細檢查程式碼是否寫錯. 2.反覆檢查第一步,再確認c++是否未註明名稱空間. 3.感覺很坑的一點,就是makefile沒有新增對應的.cpp檔案。有時候一不小心就遺忘了. 4.不要告訴我,你編譯之前沒有儲存檔案(非IDE開發環境). 5.比最坑還坑的一點,確認make

ICTCLAS2016 linux C++版本 使用教程 Eclipse下開發C/C++程式之檔案,庫檔案引用

歡迎使用NLPIR/ICTCLAS2014分詞系統 NLPIR分詞系統前身為2000年釋出的ICTCLAS詞法分析系統,從2009年開始,為了和以前工作進行大的區隔,並推廣NLPIR自然語言處理與資訊檢索共享平臺,調整命名為NLPIR分詞系統。張華平博士先後傾力打造十餘

例項理解c++中向前宣告與引用檔案的區別

使用C++程式設計,編譯時經常出現這種錯誤"error: invalid use of incomplete type ‘class xxx’",或“error: forward declaration of ‘class xxx’”. 解決這種錯誤就是用理解c++中向前宣告與引用標頭檔案的

檔案的編寫引用

      我用的是 Dev-c++  編寫標頭檔案     首先寫標頭檔案裡面的函式,       然後儲存,記得字尾寫  .h   就行   例:(順序表的標

C++ assert.h檔案

NVIDIA面試筆試題之一: assert.h是c標準庫的一個頭檔案,該標頭檔案的主要目的就是提供一個assert的巨集定義。 assert只是對所給的表示式求值,就像if判斷語句中一樣,然後如果該值為真則正常執行,否則報錯,並呼叫abort(),產生異常中斷,exit出來。 該巨集可以

Linux中C/C++編譯新增檔案庫路徑方式

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

c語言的檔案、巨集、指標

#include命令 #include是檔案包含命令,主要用來引入對應的標頭檔案。#include的處理過程很簡單,就是將標頭檔案的內容插入到該命令所在的位置,從而把標頭檔案和當前原始檔連線成一個原始檔,這與複製貼上的效果相同。#include有兩種使用方式: #include <stdio.h&g

GooGle c++編碼風格--檔案

本文所學習的GooGle規範下載於: 前言:雖然Google的風格很規範,可是一萬個人有一萬個哈姆雷特,所以結合規範風格,引申出適合自己的風格才是最好的。 1.標頭檔案 1.1#define保護  用於防止某個.h檔案被多重包含,命名格式<PROJ

C語言字串檔案string.h中的strlen,strcat,strcpy,strncpy,strcmp,strlwr,strupr函式

前言 本博文內容基於VC6.0++, 2.本博文主要介紹包含在string.h中的幾個字串相關的函式; strlen(字串陣列名) 字串有效長度函式; 返回值:整型 功能:用來測量一個字串的有效長度(所謂有效,就是從字串中的第一個字元開始,一

C語言stdio檔案包含內容介紹(常用函式用法簡介)

結構體: FILE    在stdio.h標頭檔案中定義的結構。一般來說,它用於對檔案進行操作的函式的引數或者返回值等等。它在標頭檔案中的定義如下(成員後面的註釋援引自百度知道,準確與否我查詢資料未果,到後來專門找個時間將FILE結構體解讀一下):typedef struc

如何自定義C語言.h檔案

    在專案實踐中,如果一個.c檔案程式過長,可以把檔案中的函式單獨放在一個頭檔案中,然後在.c中包含該標頭檔案即可。這兩天,根據所看的書《C語言的科學與藝術》和網上的資料,發現實際上有兩種寫法。寫法1:在.h標頭檔案中就包含函式的實現,這種標頭檔案實際上是把函式放在一起,

C++ 中#include檔案兩種方式的區別

<>:先在系統目錄中尋找標頭檔案,然後再到當前目錄下找,一般用於標準的標頭檔案 stdio.h和 stdlib.h等等"  ":先在當前目錄中尋找標頭檔案,然後再到系統目錄中找,一般用於in

C++_萬能檔案

#include <bits/stdc++.h> // C++ includes used for precompiling -*- C++ -*- // Copyright (C) 2003-2014 Free Software Foundation, Inc. // // Th

C/C++語言在檔案中定義全域性變數

轉載:http://blog.csdn.net/chenqiai0/article/details/8490665 全域性變數可不可以定義在可被多個.C檔案包含的標頭檔案中?為什麼? 可以,在不同的C檔案中以static形式來宣告同名全域性變數。標頭檔案中不可以直接定

Linux C程式設計——常用檔案

1 資料型別 1.1 stdint.h uint8_t uint16_t uint32_t 1.2 stdbool.h     C語言中是沒有bool型別的(C++中有),若要使用此型別,需要包含標

使用#include包含C++的所有檔案

參考部落格:http://blog.csdn.net/u011466175/article/details/24638621?utm_source=tuicool&utm_medium=referral #include<bits/stdc++.h>這個

VS2015建立一個完整的c++工程:檔案.h 原始檔.cpp,自動生成類

開啟VS2015 ,新建VS win32工程,前面步驟很簡單,不再闡述 下面直接開始: 新建一個VC++ win32的程式, 在原始檔加下新增.cpp檔案,一般放main函式 #include <iostream> #include <locale&

c語言List檔案應用

util_list.h#ifndef __UTIL_LIST__ #define __UTIL_LIST__ /*雙鏈節點*/ typedef struct list_node { list_node * prev; list_node * next; } LIST

#include包含C++的所有檔案

做CF看見別人用這個函式,然後就能直接用vector,set,string那些函數了,摸不著頭腦,感覺特神奇就百度了一下,才發現這個是C++版本升級,然後檔案自帶的,方便了程式設計師吧。不然每次都得敲那模板老長…… 使用和平常的標頭檔案一樣,如下: #include<