windows下怎样运行dos编辑C程序

windows下怎样运行dos编辑C程序,第1张

Windows下是无法运行DOS的,这是两个不同的 *** 作系统(DOS下可以运行早期的Windows,那时Windows还只是一个DOS程序)。

可以在Windows的命令行程序中运行部分DOS程序,Ctrl+R,在d出窗口中输入cmd即可启动命令行程序。

Windows不带C语言编译器,需要另外安装,可用Turbo C、Dev-C++,也可以用mingw、cygwin等环境(如masm、nasm、tasm等是汇编器,不能编译C语言)。

如果真的想直接编辑C程序,可以用UltraEdit等16位编辑器;只是想编辑C源代码,可以随便找一个纯文本编辑器(UltraEdit、notepad等,但Word不行)。

最近安装了新版的UltraEdit,

但一运行就跳出错误对话框:

“配置文件更新:

Uedit32exe

-

应用程序错误:

应用程序发生异常

未知的软件异常

(0xc0000417),位置为

0x00ad72d5。”

点击后,UltraEdit

也就结束了。这问题出现了好几次,这里记下,怕忘记。

今天跟踪了下UltraEdit,发现它在出现错误提示前总在目录:

“C:\Documents

and

Settings\Administrator\Application

Data\IDMComp\UltraEdit”中寻找什么,然后在资源管理器进入此目录,可以看见

“C:\Documents

and

Settings\Administrator\Application

Data\IDMComp\UltraEdit”目录有不少乱七八糟的的文件,于是将这个目录中的文件全部清空,再运行UltraEdit,错误提示不再出现,希望为有遇见相同情况的提供帮助。

具体估计与文件:“C:\Documents

and

Settings\Administrator\Application

Data\IDMComp\UltraEdit\Uedit32INI”

相关,可以删除

Uedit32INI

即可。

本文来自CSDN博客,转载请标明出处:>

如何在手机上编写c程序?

ZZ8524次浏览20201024

如何在手机上编写c程序?今天小编为大家讲解一下。

开启分步阅读模式

*** 作方法

01

打开手机,找到应用商店,点击并进入,如图所示。

02

进入之后,搜索“C语言编译器”,将其下载安装到手机上面,如图所示。

03

下载好之后,打开“C语言编译器”,如图所示。

04

进入之后,即可对C语言进行编译,如图所示。

特别提示

以上纯属个人编写,请勿转载抄袭。

本页搜狗指南内容仅供参考,请您根据自身实际情况谨慎 *** 作。尤其涉及您或第三方利益等事项,请咨询专业人士处理。

0无帮助

查看全文

大家还在搜

plc编程必背50个程序

初学编程100个代码大全

手机编写电子文档

手机编写合同软件

编写c程序的软件

手机编写c语言的软件

c程序设计实验报告

c语言流程图生成器手机版

c语言编程器手机版

c程序设计知识点

c程序设计教材电子版

手机编写文档的软件

安卓c语言编译器

c程序设计电子书

手机编写电子表格

如何编写c语言程序

手机上怎么编程c语言

编写c语言的工具软件

如何在手机上编程并运行

c语言必背18个经典程序

手机如何编写c语言

手机怎么写c语言代码

编辑c程序是指

怎样编写c语言程序

创建c程序的步骤

c程序实例

c语言编译器手机版

c程序设计语言电子版

怎么在手机上编写c语言

编写程序新手教程

手机上怎么编程c语言

编写c语言的工具软件

如何在手机上编程并运行

c语言必背18个经典程序

手机如何编写c语言

手机怎么写c语言代码

编辑c程序是指

怎样编写c语言程序

创建c程序的步骤

c程序实例

c语言编译器手机版

c程序设计语言电子版

*** 作方法

01 / 04

*** 作方法

点击目录可快速跳转至页面对应位置

01打开手机,找到应用商店,点击并进入,如图所示。

02进入之后,搜索“C语言编译器”,将其下载安装到手机上面,如图所示。

03下载好之后,打开“C语言编译器”,如图所示。

04进入之后,即可对C语言进行编译,如图所示。

指到就不难 · © SOGOUCOM 2023

C语言中对文件进行 *** 作必须首先打开文件,打开文件主要涉及到fopen函数。fopen函数的原型为

FILE fopen(const char path,const char mode)

其中path为文件路径,mode为打开方式

1)对于文件路径,只需注意若未明确给出绝对路径,则默认该文件在工程的目录下。若需给出绝对路径,则注意转义字符'\',比如有文件testtxt存放在C盘根目录下,则文件路径参数值应为C:\\testtxt。

2)对于mode,主要由r,w,a,+,b,t六个字符组合而成。

r:只读方式,文件必须存在

w:只写方式,若文件存在,则原有内容会被清除;若文件不存在,则会建立文件

a:追加方式打开只写文件,只允许进行写 *** 作,若文件存在,则添加的内容放在文件末尾;若不存在,则建立文件

+:可读可写

b:以二进制方式打开文件

t:以文本方式打开文件(默认方式下以文本方式打开文件)

下面是常见的组合:

r: 以只读的方式打开文件,只允许读,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部

r+: 以可读可写的方式打开文件,允许读写,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部

rb+: 以可读可写、二进制方式打开文件,允许读写,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部

rt+: 以可读可写、文本方式打开文件,允许读写,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部

w: 以只写的方式打开文件,只允许写,若文件存在,文件中原有内容会被清除;若文件不存在,则创建文件,打开成功后返回文件指针,位置指针指向文件头部

w+: 以读写的方式打开文件,允许读写,若文件存在,文件中原有内容会被清除;若文件不存在,则创建文件,打开成功后返回文件指针,位置指针指向文件头部

a: 以追加、只写的方式打开文件,只允许写。若文件存在,则追加的内容添加在文件末尾,若文件不存在,则创建文件。打开成功后返回文件指针,位置指针指向文件头部(注意很多书上或资料上讲述追加方式打开成功后位置指针指向文件末尾是错误的)

a+: 以追加、可读写的方式打开文件,允许读写。若进行读 *** 作,则从头开始读;若进行写 *** 作,则将内容添加在末尾。若文件不存在,则创建文件。打开成功后返回文件指针,位置指针指向文件头部。

其他方式类似。

下面讨论一下以二进制方式和文本方式打开文件有什么区别。

其实这两种方式打开文件并没有太大的区别,仅仅只有一点区别就是在处理某些特殊字符的时候。

以文本方式打开文件,若将数据写入文件,如果遇到换行符'\n'(ASII 值为10,0A),则会转换为回车—换行'\r\n'(ASII值为13,10,0D0A)存入到文件中,同样读取的时候,若遇到回车—换行,即连续的ASII值13,10,则自动转换为换行符。

而以二进制方式打开文件时,不会进行这样的处理。

还有如果以文本方式打开文件时,若读取到ASCII码为26(^Z)的字符,则停止对文件的读取,会默认为文件已结束,而以二进制方式读取时不会发生这样的情况。由于正常情况下我们手动编辑完成的文件是不可能出现ASCII码为26的字符,所以可以用feof函数去检测文件是否结束。以上所述的两点区别只在windows下存在,在unix下没有区别。

注意:1)在以追加方式打开文件时,位置指针指向文件的首部。

在这里区分一下位置指针和文件指针:

文件指针:指向存储文件信息的一个结构体的指针

位置指针:对文件进行读写 *** 作时移动的指针

在头文件<stdioh>中存在一个结构体_iobuf,在VC60中选中FILE,然后F12,则可以看到_iobuf的具体定义:

struct _iobuf {

char _ptr;

int _cnt;

char _base;

int _flag;

int _file;

int _charbuf;

int _bufsiz;

char _tmpfname;

};

typedef struct _iobuf FILE;

比如用FILE fp定义了一个文件指针,并成功打开一个文件之后,fp只是指向该结构体,而在对文件进行读写 *** 作时,fp的值并不会改变,改变的是结构体中_ptr的值,这个_ptr就是位置指针。

2)以追加方式打开时,若进行写 *** 作,则rewind函数和fseek函数不会起到作用,因为以追加方式打开时进行写 *** 作的话,系统会自动将位置指针移动到末尾。

3)当文件打开用于更新时,可以通过文件指针对文件进行读写 *** 作,但是如果没有给出fseek或者rewind的话,读 *** 作后面不能直接跟写 *** 作,否则会是无效的写 *** 作(位置指针会移动,但是需要写入文件的内容不会被写入到文件当中),但是写 *** 作后可以直接跟读 *** 作。

1测试程序

假设工程目录下已存在文件testtxt,文件中含有的字符串为"ABC"

/测试fopen函数以追加方式打开文件时初始指针的位置 2011105/

#include<stdioh>

#include<stdlibh>

int main(void)

{

int n;

FILE fp;

if((fp=fopen("testtxt","a"))==NULL)

{

printf("can not open file\n");

exit(0);

}

n=ftell(fp); //得到此时fp所处位置距文件首的偏移字节数

printf("%d\n",n);

fputs("test",fp);

n=ftell(fp);

printf("%d\n",n);

fclose(fp);

return 0;

}

输出结果为:

0

7

Press any key to continue

由输出结果可知,初始打开文件后,指针是位于文件首部,只是在往文件中添加内容时,才将文件指针移动到文件末尾。

2测试程序

/测试以二进制方式和文本方式打开文件的区别 2011105/

#include<stdioh>

#include<stdlibh>

int main(void)

{

char ch;

int i;

char s[]={'A','B','\n','C'};

FILE fp1,fp2;

if((fp1=fopen("test1txt","wt"))==NULL)

{

printf("can not open file\n");

exit(0);

}

if((fp2=fopen("test2txt","wb"))==NULL)

{

printf("can not open file\n");

exit(0);

}

for(i=0;i<4;i++)

{

fputc(s[i],fp1); //以文本方式向文件中写入数据

fputc(s[i],fp2); //以二进制方式向文件中写入数据

}

fclose(fp1);

fclose(fp2);

if((fp1=fopen("test1txt","rt"))==NULL)

{

printf("can not open file\n");

exit(0);

}

if((fp2=fopen("test1txt","rb"))==NULL)

{

printf("can not open file\n");

exit(0);

}

ch=fgetc(fp1);

while(!feof(fp1)) //以文本方式从文件中读取数据

{

printf("%02X",ch);

ch=fgetc(fp1);

}

printf("\n");

ch=fgetc(fp2);

while(!feof(fp2)) //以二进制方式从文件中读取数据

{

printf("%02X",ch);

ch=fgetc(fp2);

}

printf("\n");

fclose(fp1);

fclose(fp2);

return 0;

}

在向文件中写完数据后,用UltraEdit以二进制方式打开test1txt和test2txt,看到的结果如下:

根据得到的结果可知,以文本方式写入时,多写入了一个字符0D,即'\r'。

程序输出结果:

41420A43

41420D0A43

请按任意键继续

分别以文本方式和二进制方式读取test1txt时,输出的内容不同。

可知在以文本方式读取时,对'\r\n'进行了转换,而二进制方式读取时却没有进行这样的转换(要注意,windows和linux下的换行符是不一样的,在windows下换行符是\r\n,即0X0D、0X0A,而在linux下换行符是\n,即0X0A。

3测试程序

/测试读 *** 作后能否直接跟写 *** 作 2011105/

#include<stdioh>

#include<stdlibh>

int main(void)

{

int ch;

int n;

FILE fp;

if((fp=fopen("testtxt","r+"))==NULL)

{

printf("can not open file\n");

exit(0);

}

fseek(fp,1L,0); //将fp移动到距文件首1字节的位置

ch=fgetc(fp);

printf("%c\n",ch);

//rewind(fp);

fseek(fp,1L,0);

fputs("test",fp);

ch=fgetc(fp);

printf("%c\n",ch);

fclose(fp);

return 0;

}

假设工程已经存在文件testtxt,文件中含有字符串"ABCDEFGH"。

则上述程序执行结果为:

B

F

请按任意键继续 文件中内容为"AtestFGH"。

与预想结果相同,因此读取到字符'B'后,再将位置指针置到距文件首1字节处,即字符'B'处,写入"test"后,会覆盖掉"BCDE",写完后位置指针指向字符'F',因此此时进行读 *** 作,得到的结果是'F'。

但是如果将fseek(fp,1L,0);这句注释掉,则执行结果为:

B

G

请按任意键继续

文件中的内容为"ABCDEFGH"。

注释掉fseek一句后,读取完字符'B'后,位置指针指向字符'C',再进行写 *** 作,位置指针会向后移动4个字节的位置,指向字符'G',因此第二次读取的输出结果为'G'。但是文件中的内容没有被改写,相当于这次写 *** 作是无效 *** 作。

以上就是关于windows下怎样运行dos编辑C程序全部的内容,包括:windows下怎样运行dos编辑C程序、UltraEdit无法打开、c语言编辑器怎么用手机版等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10095562.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存