1. 在jsp標記中include指令標記與include動作標記的區別
兩者的作用都是處理所需要的文件,但處理方式和處理時間不同。
include指令標記是在編譯階段就處理所需要的文件,被處理的文件在邏輯和語法上依賴於當前的jsp頁面,優點是執行速度快。
include動作標記在jsp頁面運行時才被處理的文件,被處理的文件在邏輯和語法上獨立與當前的JSP頁面,其優點是可以使用param子標記更靈活的處理所需要的文件,缺點是執行要慢一點
2. C++中include函數
使用尖括弧表示在包含文件目錄中去查找(包含目錄是由用戶在設置環境時設置的),而不在源文件目錄去查找; 使用雙引號則表示首先在當前的源文件目錄中查找,若未找到才到包含目錄中去查找。
3. c語言里include包含的文件,編譯時是全部編譯還是將部分用到的內容編譯
在預處理時把代碼全部放進去,編譯時自然是全部編譯,但是後期涉及到動態庫的東西,其實有些函數沒有真的被鏈接進來(只是地址而已),這些東西慢慢來吧
4. C ++ 在編譯過程中出現"是否忘記了向源中添加「#include "stdafx.h"
你應該是開啟了預編譯頭功能。這個是VS系列編譯器提供的一項新功能,可以將一些常用的頭文件,加入到這個預編譯頭文件中
這樣,你的其他文件,只需要添加stdafx.h即可
程序在編譯之前,會將stdafx.h中的內容,替換到源代碼中,提高編譯效率
如果你不想開啟該功能,可以通過如下步驟停止該內容:
我的是VS2008.你可以在相應版本中,找類似的操作
在菜單欄,點擊「項目」
選擇最下方的「XXX屬性」(XXX為你現在正在使用的功能名)
選擇左側,配置屬性
選擇C/C++
選擇預編譯頭
在右側,選擇「不使用預編譯頭」
截圖如下
5. #include 是什麼意思
通俗的說:在C系統的編程語言中,#include是為了聲明在這個地方插入別的文件中的代碼。
#include是一個計算機專業術語,一指C/C++中包含頭文件命令,用於將指定頭文件嵌入源文件中。#include一般用在C、C++等語系的編譯環境(就是用在編程軟體的編程代碼里)中,直白的說,它就是告訴你,在這個地方,你要插入一堆代碼,這堆代碼在另一個文件里。
例如:#include <stdio.h>
這就是說,在代碼的這個地方,要相當於把stdio.h文件里的代碼放到這個地方來。打「<>」這種尖括弧,說的是,這個文件是編程環境標配擁有的文件,到默認的標配的地方去找這個文件。
預處理器發現 #include 指令後,就會尋找指令後面<>中的文件名,並把這個文件的內容包含到當前文件中。被包含文件中的文本將替換源代碼文件中的#include 指令, 就像你把被包含文件中的全部內容鍵入到源文件中的這個位置一樣。
include在JSP命令中的作用:
<%@include %>指命將會在JSP編譯時插入一個包含文本或代碼的文件,當你使用<%@ include %>;指命時,這個包含的過程就當是靜態的。靜態的包含就是指這個被包含的文件將會被插入到JSP文件中去,這個包含的文件可以是JSP文件,HTML文件,文本文件。如果包含的是JSP文件,這個包含的JSP的文件中代碼將會被執行。
如果你僅僅只是用include 來包含一個靜態文件。那麼這個包含的文件所執行的結果將會插入到JSP文件中放<% @ include %>;的地方。一旦包含文件被執行,那麼主JSP文件的過程將會被恢復,繼續執行下一行.
這個被包含文件可以是html文件,jsp文件,文本文件,或者只是一段Java代碼,但是你得注意在這個包含文件中不能使用<html>,</html>,<body>,</body>;標記,因為這將會影響在原JSP文件中同樣的標記 ,這樣做有時會導致錯誤.
6. 在C語言中,include,printf是什麼意思
include是把後面的文件復制到你所寫的源碼文件,比如你在hello.c中寫下了
#include <stdio.h>編譯器會將stdio.h文件中的代碼復制到hello.c中,這個過程有預處理器完成.
printf()是CI/O系統中的一個函數,用於輸出相就的信息,它在stdio.h頭文件中生成,關注0x30網路貼吧,關注C/C++
7. C語言中#include什麼意思
在C語言中,#include 被稱為文件包含命令,是編譯預處理指令。其含義為讓編譯器在預設的頭文件目錄中搜索指定名稱的頭文件並將其插入到指令所在位置。它後面的文件名可以用尖括弧括起來,也可以用雙引號括起來。如果用尖括弧,則直接在預設頭文件目錄中進行搜索,如果用雙引號,則先在源程序所在目錄中進行搜索,如沒有找到則轉至預設的頭文件目錄中進行搜索。
8. c語言中如何編譯頭文件啊
只要在程序開頭加入#include<頭文件名>,在編譯過程當中,頭文件自動會被添加到源文件當中一起進行編譯。
編譯,編譯程序讀取源程序(字元流),對之進行詞法和語法的分析,將高級語言指令轉換為功能等效的匯編代碼,再由匯編程序轉換為機器語言,並且按照操作系統對可執行文件格式的要求鏈接生成可執行程序。
C源程序頭文件-->預編譯處理(cpp)-->編譯程序本身-->優化程序-->匯編程序-->鏈接程序-->可執行文件。
9. C++的include機制是怎樣的在預編譯階段是如何層層深入查找文件
比如D include了C,而C又include了A和B,那麼編譯的時候編譯器看到D的include後就去找C的 include,然後遇到了include A,B那麼就又去找A,和B.
上面的是在找類型定義的時候回去做這些處理,如果在某一層找到了就不向上找了,例如D裡面用到的類型在C裡面找到了,那麼就不會去找A和B了
10. C語言中很多的預處理指令include、define等等它們各自的意義分別是什麼
include的作用: #include叫做「文件包含」 / include 語句包含並運行指定文件。 功能:它的功能是用來指定文件的全部內容替換程序中的命令行,從而使指定的文件與當前源文件連成一個源文件 書寫格式: #include <文件名> //表示編譯系統根據系統頭文件存放的目錄路徑去搜索系統頭文件,而不是在源文件目錄去查找 #include "文件名" //表示編譯系統首先在當前的源文件目錄中查找,若未找到才根據系統的頭文件存放的目錄路徑去搜索系統頭文件 //系統定義的頭文件通常使用尖括弧;用戶自定義的頭文件通常使用雙引號。 //一般來說,如果為調用庫函數而用#include命令來包含相關的頭文件,則用尖括弧,以節約查找時間。 //如果要包含的是用戶自己編寫的文件(這種文件一般都在用戶當前的目錄中),一般用雙撇號。 //若文件不在當前目錄中,在雙撇號內應該給出文件路徑(如#include"C:\wang\file2.h") ----------------- 1.#define 的作用 在C或C++語言源程序中允許用一個標識符來表示一個字元串,稱為「宏」。被定義為「宏」的標識符稱為「宏名」。在編譯預處理時,對程序中所有出現的「宏名」,都用宏定義中的字元串去代換,這稱為「宏代換」或「宏展開」。宏定義是由源程序中的宏定義命令完成的。宏代換是由預處理程序自動完成的。 在C或C++語言中,「宏」分為有參數和無參數兩種。 2. 無參宏定義 無參宏的宏名後不帶參數。 其定義的一般形式為: #define 標識符 字元串 其中的「#」表示這是一條預處理命令。凡是以「#」開頭的均為預處理命令。「define」為宏定義命令。「標識符」為所定義的宏名。「字元串」可以是常數、表達式、格式串等。 例如: #define M (a+b) 它的作用是指定標識符M來代替表達式(a+b)。在編寫源程序時,所有的(a+b)都可由M代替,而對源程序作編譯時,將先由預處理程序進行宏代換,即用(a+b)表達式去置換所有的宏名M,然後再進行編譯。 程序1: #define M (a+b) main(){ int s,y; printf("input a number: "); scanf("%d",&y); s=M*M; printf("s=%d\n",s); } 上常式序中首先進行宏定義,定義M來替代表達式(a+b),在 s= M * M 中作了宏調用。在預處理時經宏展開後該語句變為: S=(a+b)*(a+b) 但要注意的是,在宏定義中表達式(a+b)兩邊的括弧不能少。否則會發生錯誤。 如當作以下定義後:#difine M (a)+(b) 在宏展開時將得到下述語句:S= (a)+(b)*(a)+(b) 對於宏定義還要說明以下幾點: 1. 宏定義是用宏名來表示一個字元串,在宏展開時又以該字元串取代宏名,這只是一種簡單的代換,字元串中可以含任何字元,可以是常數,也可以是表達式,預處理程序對它不作任何檢查。如有錯誤,只能在編譯已被宏展開後的源程序時發現。 2. 宏定義不是說明或語句,在行末不必加分號,如加上分號則連分號也一起置換。 3. 宏定義必須寫在函數之外,其作用域為宏定義命令起到源程序結束。如要終止其作用域可使用#undef命令。 3. 帶參宏定義 c語言允許宏帶有參數。在宏定義中的參數稱為形式參數,在宏調用中的參數稱為實際參數。對帶參數的宏,在調用中,不僅要宏展開,而且要用實參去代換形參。 帶參宏定義的一般形式為: #define 宏名(形參表) 字元串 在字元串中含有各個形參。 帶參宏調用的一般形式為: 宏名(形參表) 例如: #define M(y) ((y)*(y)+3*(y)) /*宏定義*/ .... k=M(5); /*宏調用*/ .... 在宏調用時,用實參5去代替形參y,經預處理宏展開後的語句為: k=5*5+3*5 程序2: #define MAX(a,b) (a>b)?a:b main(){ int x,y,max; printf("input two numbers: "); scanf("%d%d",&x,&y); max=MAX(x,y); printf("max=%d\n",max); } 上常式序的第一行進行帶參宏定義,用宏名MAX表示條件表達式(a>b)?a:b,形參a,b均出現在條件表達式中。程序第七行max=MAX(x,y)為宏調用,實參x,y,將代換形參a,b。宏展開後該語句為: max=(x>y)?x:y; 用於計算x,y中的大數。