c动态编译并执行
开发C程序有四个步骤:编辑、编译、连接和运行。
任何一个体系结构处理器上都可以使用C语言程序,只要该体系结构处理器有相应的C语言编译器和库,那么C源代码就可以编译并连接到目标二进制文件上运行。
1、预处理:导入源程序并保存(C文件)。
2、编译:将源程序转换为目标文件(Obj文件)。
3、链接:将目标文件生成为可执行文件(EXE文件)。
4、运行:执行,获取运行结果的EXE文件。
(1)c动态编译并执行扩展阅读:
将C语言代码分为程序的几个阶段:
1、首先,源代码文件测试。以及相关的头文件,比如stdio。H、由预处理器CPP预处理为.I文件。预编译的。文件不包含任何宏定义,因为所有宏都已展开,并且包含的文件已插入。我归档。
2、编译过程是对预处理文件进行词法分析、语法分析、语义分析和优化,生成相应的汇编代码文件。这个过程往往是整个程序的核心部分,也是最复杂的部分之一。
3、汇编程序不直接输出可执行文件,而是输出目标文件。汇编程序可以调用LD来生成可以运行的可执行程序。也就是说,您需要链接大量的文件才能获得“a.out”,即最终的可执行文件。
4、在链接过程中,需要重新调整其他目标文件中定义的函数调用指令,而其他目标文件中定义的变量也存在同样的问题。
② C语言的编译和运行按什么键
编译F9 运行Ctrl+F9
不同的编译器命令快捷键略有不同。
下面是Visual Stdio的命令快捷键列表:
CTRL + SHIFT + B
生成解决方案
CTRL + F7
生成编译
CTRL + O
打开文件
CTRL + SHIFT + O
打开项目
CTRL + SHIFT + C
显示类视图窗口
F4
显示属性窗口
SHIFT + F4
显示项目属性窗口
CTRL + SHIFT + E
显示资源视图
F12
转到定义
CTRL + F12
转到声明
CTRL + ALT + J
对象浏览
CTRL + ALT + F1
帮助目录
CTRL + F1
动态帮助
F1
帮助
SHIFT + F1
当前窗口帮助
CTRL + ALT + F3
帮助-搜索
SHIFT + ALT + ENTER
全屏显示
CTRL + -
向后定位
CTRL + SHIFT + -
向前定位
CTRL + F4
关闭文档窗口
CTRL + PAGE DOWN
光标定位到窗口上方
CTRL + PAGE UP
光标定位到窗口下方
CTRL + F6
CTRL + TAB
下一个文档窗口
CTRL + SHIFT + F6
CTRL + SHIFT + TAB
上一个文档窗口
ALT + F6
下一个面板窗口
CTRL + K, CTRL + L
取消remark
CTRL + K, CTRL + C
注释选择的代码
CTRL + K, CTRL + U
取消对选择代码的注释
CTRL + M, CTRL + O
折叠代码定义
CTRL + M, CTRL + L
展开代码定义
CTRL + DELETE
删除至词尾
CTRL + BACKSPACE
删除至词头
SHIFT + TAB
取消制表符
CTRL + U
转小写
CTRL + SHIFT + U
转大写
CTRL + SHIFT + END
选择至文档末尾
CTRL + SHIFT + HOME
选择至文档末尾开始
SHIFT + END
选择至行尾
SHIFT + HOME
选择至行开始处
SHIFT + ALT + END
垂直选择到最后尾
SHIFT + ALT + HOME
垂直选择到最前面
CTRL + A
全选
CTRL + W
选择当前单词
CTRL + SHIFT + PAGE UP
选择至本页前面
CTRL + SHIFT + PAGE DOWN
选择至本页后面
CTRL + END
文档定位到最后
CTRL + HOME
文档定位到最前
CTRL + G
转到…
CTRL + K, CTRL + P
上一个标签
CTRL + K, CTRL + N
下一个标签
ALT + F10
调试-ApplyCodeChanges
CTRL + ALT+ Break
停止调试
CTRL + SHIFT + F9
取消所有断点
CTRL + F9
允许中断
CTRL + SHIFT + F5
调试-重新开始
F5
运行调试
CTRL + F5
运行不调试
F10
跨过程序执行
F11
单步逐句执行
CTRL + J
列出成员
CTRL + PAGE DOWN
下一个视图
CTRL + B
格式-粗体
CTRL + SHIFT + T
格式-文字缩进
③ 编辑,编译和运行C程序需要什么条件
c程序的编辑,编译,链接和运行
编辑
对于C语言来说,任何文本编辑器都是可以的;windows自带的notepad,linux常用VIM都可以
编译,链接
虽然这是两个步骤,但通常是同一套tool,例如开源的gcc系列,微软的visual C++都有自己的编译链接工具。
运行
一旦编译链接完成通常就可以在目标机器上运行了;如果使用了动态库,还需要运行环境里有对应的库文件才行。
④ 写了一个程序可以编译c语言,怎么自动再链接然后执行生成的可执行文件
编译的大致过程如下:
你完成的其实是前面一部分,的第一阶段,生成了中间代码。
目标代码,即目标文件包含着机器代码(可直接被计算机中央处理器执行)以及代码在运行时使用的数据,如重定位信息,如用于链接或调试的程序符号(变量和函数的名字),此外还包括其他调试信息。
后面是由链接程序将编译后形成的一组目标模块以及它们所需要的库函数链接在一起,形成一个完整的载入模块。
目前的编译工具通常编译器和链接器都是分开,例如GNU的编译器是gcc,链接器是ld
⑤ c语言如何把c程序编译成可执行的exe文件
1、编写一段简单的代码,如下图所示,编辑一段简单的输出语句。
⑥ 在C语言中,完成C源文件编辑后到生成执行文件的步骤是什么
编译链接,期间查找错误并更正,重复编译链接过程,知道修改正确。然后得到可执行文件。
⑦ 如何用C#动态编译,执行代码
代码如下:
/*
*使用C#动态编译代码和执行
*作者:yaob
*/
staticvoidMain(string[]args)
{
//编译器
CodeDomProvidercdp=CodeDomProvider.CreateProvider("C#");
//编译器的参数
CompilerParameterscp=newCompilerParameters();
cp.ReferencedAssemblies.Add("System.dll");
cp.GenerateExecutable=false;
cp.GenerateInMemory=true;
//编译结果
CompilerResultscr=cdp.CompileAssemblyFromSource(cp,HelloWorld());
if(cr.Errors.HasErrors)Console.WriteLine("编译出错!");
else
{
//编译后的程序集
Assemblyass=cr.CompiledAssembly;
//得到HelloWorld类中的SayHello方法
Typetype=ass.GetType("HelloWorld.HelloWorld");
MethodInfomi=type.GetMethod("SayHello");
//执行
mi.Invoke(null,null);
}
}
//动态构建的代码
staticstringHelloWorld()
{
StringBuildersbCode=newStringBuilder();
sbCode.AppendLine("usingSystem;");
sbCode.AppendLine("namespaceHelloWorld");
sbCode.AppendLine("{");
sbCode.AppendLine("classHelloWorld");
sbCode.AppendLine("{");
sbCode.AppendLine("publicstaticvoidSayHello()");
sbCode.AppendLine("{");
sbCode.AppendLine("Console.WriteLine("Hello~World~!");");
sbCode.AppendLine("}");
sbCode.AppendLine("}");
sbCode.AppendLine("}");
returnsbCode.ToString();
}
⑧ 怎样在linux下编写C程序并编译执行
.编译单个源文件
[例如]在屏幕上打印"Hello,Linux."
[源代码]#include<stdio.h
#include<stdlib.h
int main(int argc,char **argv){printf("Hello,Linux.\n");exit(0);}将源文件保存为hello.c,开始进行编译
$gcc -o hello hello.c
编译成功完成后,在当前路径下,生成一个名为hello的文件,然后执行
$./hello在屏幕上,你将会看到打印结果:Hello,Linux.
说明:在默认情况下,编译成功完成后,会在当前路径下,生成一个名为a.out的文件,然后执行$./a.out便可打印结果,但通常可以通过选项-o来指定自己的可执行程序名称;
2.编译多个源文件
3.使用外部函数库
4.使用共享函数库和静态函数库5.gcc选项详细描述