导航:首页 > 源码编译 > 用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语言编译器编译自己的姓名相关的资料

热点内容
mdk3命令 浏览:497
我的世界服务器云地址是什么 浏览:751
往复压缩机气缸 浏览:244
骰子挂云服务器 浏览:939
弹性基础钢筋加密区 浏览:742
html中插入php代码 浏览:270
js读取php返回的json 浏览:391
寻星app怎么找星星 浏览:222
磁盘要加密吗 浏览:463
夕阳风采app怎么下载不了 浏览:438
安卓方舟商店为什么不可用 浏览:640
phpecho字符串 浏览:685
中国银行app怎么关联人 浏览:755
eds是什么服务器 浏览:459
半圆命令键 浏览:446
linux文件系统实现 浏览:856
cadchange命令 浏览:328
电脑图谱源码大全 浏览:757
dos系统下命令 浏览:527
运维狗和程序员 浏览:709