導航:首頁 > 源碼編譯 > 用c語言編譯器編譯自己的姓名

用c語言編譯器編譯自己的姓名

發布時間:2022-02-11 20:40:11

⑴ 初學者,怎麼在c語言編譯器上輸入自己名字

intmain(){
chars[10];
scanf("%s",&s);
return0;
}

⑵ C語言的編譯器是用什麼語言寫的

C語言的原型ALGOL 60語言。(也稱為A語言)

1963年,劍橋大學將ALGOL 60語言發展成為CPL(Combined Programming Language)語言。

1967年,劍橋大學的Matin Richards 對CPL語言進行了簡化,於是產生了BCPL語言。

1970年,美國貝爾實驗室的Ken Thompson將BCPL進行了修改,並為它起了一個有趣的名字「B語言」。意思是將CPL語言煮干,提煉出它的精華。並且他用B語言寫了第一個UNIX操作系統。

而在1973年,B語言也給人「煮」了一下,美國貝爾實驗室的D.M.RITCHIE在B語言的基礎上最終設計出了一種新的語言,他取了BCPL的第二個字母作為這種語言的名字,這就是C語言。

看到了不 最早的C編譯器當然是B語言寫的了

⑶ 為什麼c語言的編譯器可以用c語言來寫

所謂C語言編譯器,就是把編程得到的文件,比如.c,.h的文件,進行讀取,並對內容進行分析,按照C語言的規則,將其轉換成系統可以執行的二進制文件。
其本質在於對文件的讀入,分析,及處理。這些操作,C語言都是可以實現的。
所以用C語言來做C語言的編譯器是完全可行的。

但是,歷史上的第一個C語言編譯器,肯定不是C語言寫的,因為在沒有編譯器時,無法把C語言轉換成可執行文件。
只要有了第一版其它語言的編譯器,就可以用C語言寫編譯器了。
事實上,目前大多數的C語言編譯器,都是用C語言寫的。

⑷ c語言函數 編譯後的名字

在vs2010里,用的同一個編譯器,編譯的,
因為,c++是c的超集,所以可以編譯通過,
都是。cpp

⑸ 新手用什麼c語言編譯器

TC吧,但是TC不能復制、粘貼,如果覺得TC不好,就用VC++ 6.0或DEV C++都行,雖然是C++的編譯環境,但C語言也可以用的

⑹ 怎麼用c語言編譯器編譯

得先以你下載的那個編譯器把 11.c 編譯了, 生成執行文件, 再在cmd中運行這個執行文件.

⑺ 如何用java調用c語言編譯器實現在線編譯c語

要在java中調用c語言的庫,需要使用Java提供了JNI。
舉例說明
在c語言中定義一個 void sayHello()函數(列印Hello World);然後在Java中調用這個函數顯示Hello Word.
現在分別從Java和C語言兩部分說明:
1. Java 部分
首先定義一個HelloNative,在其中申明sayHello函數,函數要申明為Native 類型的.如下:
public class HelloNative {
public native void sayHello();
}

編譯這個類,生成class文件:
javac HelloWorld.java

利用javah生成需要的h文件
javah HelloNative

生成的 h文件大概如下:

/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class HelloNative */

#ifndef _Included_HelloNative
#define _Included_HelloNative
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: HelloNative
* Method: sayHello
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_HelloNative_sayHello
(JNIEnv *, jobject);

#ifdef __cplusplus
}
#endif
#endif

可以看一下上面自動生成的程序,程序include了jni.h,這個頭文件在 $JAVA_HOME下的include文件夾下. 還可以發現生成的函數名是在之前的函數名前面加上了Java_HelloNative。
2. C語言部分
根據上面生成的h文件編寫相應的代碼實現,建立一個 HelloNative.cpp用來實現顯示Hello World的函數.如下:

#include <stdio.h>
#include "HelloNative.h"

JNIEXPORT void JNICALL Java_HelloNative_sayHello(JNIEnv *, jobject)
{
printf("Hello World!\n");
}

代碼編寫完成之後,我們再用gcc編譯成庫文件,命令如下;
gcc -fPIC -I/usr/lib/jvm/java-7-openjdk-i386/include -I/usr/lib/jvm/java-7-openjdk-i386/include/linux -shared -o libHelloNative.so HelloNative.cpp

這樣就會在當前目錄下生成一個libHelloNative.so的庫文件.這時需要的庫已經生成,在C語言下的工作已經完成了.
接下來需要在Java中編寫一個程序測試一下.在程序前,需要將我們的庫載入進去.載入的方法是調用Java的 System.loadLibrary("HelloNative");

public class TestNative
{
static {
try {
System.loadLibrary("HelloNative");
}
catch(UnsatisfiedLinkError e) {
System.out.println( "Cannot load hello library:\n " + e.toString() );
}
}
public static void main(String[] args) {
HelloNative test = new HelloNative();
test.sayHello();
}
}

但是再編譯後,運行的時候,問題又出現了.
Cannot load hello library:
java.lang.UnsatisfiedLinkError: no HelloNative in java.library.path
Exception in thread "main" java.lang.UnsatisfiedLinkError: HelloNative.sayHello()V
at HelloNative.sayHello(Native Method)
at TestNative.main(TestNative.java:13)

載入庫失敗,但是庫明明就是放在當前文件夾下的,怎麼會載入失敗呢?
用System.getProperty("java.library.path")查看,發現java.library.path中並不u存在當前的目錄.主要有以下的幾個解決辦法:
1) 將生成的庫復制到java.library.path有的路徑中去,當然這樣不是很好
2) 設置環境變數export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH ,將當前的目錄加入到LD_LIBRARY_PATH中
3) 設置java 的選項,將當前的目錄加入到其中 .java -Djava.library.path=. $LD_LIBRARY_PATH
這樣之後程序就能夠成功的運行了.可以看見顯示的"Hello World!"了

⑻ 編程c語言用哪個編譯器

Visual Studio
世界第一編譯器不解釋

不過如果電腦太渣還是選其他的吧,vs很占內存和C盤(即便安裝位置在別的盤)

閱讀全文

與用c語言編譯器編譯自己的姓名相關的資料

熱點內容
android上傳圖片方式 瀏覽:882
華為視頻會議伺服器如何連接 瀏覽:219
phpfpm並發數 瀏覽:923
雲伺服器哪裡看 瀏覽:243
戴爾emc伺服器led怎麼拔出 瀏覽:792
程序員霸王 瀏覽:369
文件夾重合如何分開 瀏覽:161
mdk3命令 瀏覽:502
我的世界伺服器雲地址是什麼 瀏覽:753
往復壓縮機氣缸 瀏覽:246
骰子掛雲伺服器 瀏覽:944
彈性基礎鋼筋加密區 瀏覽:746
html中插入php代碼 瀏覽:275
js讀取php返回的json 瀏覽:395
尋星app怎麼找星星 瀏覽:227
磁碟要加密嗎 瀏覽:465
夕陽風采app怎麼下載不了 瀏覽:442
安卓方舟商店為什麼不可用 瀏覽:642
phpecho字元串 瀏覽:685
中國銀行app怎麼關聯人 瀏覽:757