屯屯妄c语言
Ⅰ c语言程序操作txt文件后,产生大量“屯屯屯”
出现这个原因只有一种,字符串没有结束标志\0。看你的描述,应该是文件过大导致的。
Ⅱ 为什么C语言经常打印出“屯屯屯。。。”出来
是VC吧……明显的变量未初始化,“屯屯”是VC为了方便调试对未初始化的默认填充,这样你就能知道有变量未初始化了。记住定义变量一定要初始化,初始化数组最好全清零……
Ⅲ 高分跪求c语言从文件读取内容出现屯屯屯的问题
文件是空的不代表你运行initial_people();后对应的结构体变量中的字符串是空的。
如果文件是空的,结构体变量中的字符串将是undefine。也就是说你的变量初始化没有做好,应该在用文件内容更新变量之前先对变量进行初始化。
Ⅳ 这段C语言的 读文件哪里出错了为什么读出来的是“屯屯屯屯屯。。。。”
加一行代码: fseek(f, 0, SEEK_SET);
你写好文件后,没有关闭,那么文件指针在最后一个位置,那你在读的时候肯定就是从末尾啊,所以是随机字符,就像你说的乱码样。
故不用fseek也行,加这两行代码:
fclose(f);
f=fopen("c:\\test.txt","rt+"); //也关了,在打开,也行。
改后程序如下:
#include<stdio.h>
#include<string.h>
void main()
{
FILE *f ;
char ch[80] = "";
if( (f = fopen("c:\\test.txt","wt+"))==NULL)
{
printf("can't open the file");
//getch(); //你这两个函数没有加头文件,没有用。可以去掉。
//exit(1);
}
fputs ("sdfgsad1", f);
fputs ("sdfgsad2", f);
fseek(f, 0, SEEK_SET); //定位函数,必须要。
while(fgets(ch,128,f))
{
puts(ch);
}
fclose(f);
}
Ⅳ c语言编程运行出现“”屯屯屯”是怎么回事
说明你在代码中的指针或数组中越界了,到了你没有设定的内存空间了,特别是在链表程序中很容易造成指针操作的错误
Ⅵ c语言运行结果有一行出现屯屯屯,其他没有,怎么办
可以检查格式转换说明,看是否格式转换说明不对。
Ⅶ 求助C语言 出现大量 “屯屯屯屯屯屯屯屯”如何解决
用的vc吗?未初始化的字节会默认赋值为0xcc
然后,你字符串数据没有在末尾加上'\0'吧。
输出字符串,会把后面未赋值的也显示,然后在unicode下,会显示成这个这个字。
Ⅷ 如何去掉c语言运行时的 屯啊
这个是因为你的字符数组中存放了没有以'\0'结尾的字符串,你只需要在最后一个字符数组元素后加'\0'即可。
比如说你有一个字符数组是sz[100],你存放的时候存放
sz[0] = 'a';
sz[1] = 'b';
sz[2] = 'c';
这样你printf("%s", sz);
得到的结果肯定是abc屯屯屯屯屯屯屯屯之类的结果,如何修正呢?
只需要加上sz[3] = '\0';
那么输出就正确了。
你可以试试看,就明白了。
Ⅸ C语言读入写出文件,写出文件时出现个别乱码。
fread()
和
fwrite()
用于2进制文件读写。
也就是说,你打开文件时,无论读还是写
要有选项
b,
例如
"rb","wb".
文本文件,按2进制方式打开,就会按2进制方法处理。
改正你的
fopen
里的
选项,就可解决问题。