社区
C++ 语言
帖子详情
读入顺序文件遇到了问题
aran_rs
2005-03-30 10:00:24
当我在读入顺序文件时,有四五十组数,每组数是有一个点名,五个double型数组成,我要用那五个数,但是我用下面的语句时却只循环了一次,请教高手,是什么原因?
while(inClientFile>>pointname>>u>>v>>X>>Y>>Z)
...全文
102
5
打赏
收藏
读入顺序文件遇到了问题
当我在读入顺序文件时,有四五十组数,每组数是有一个点名,五个double型数组成,我要用那五个数,但是我用下面的语句时却只循环了一次,请教高手,是什么原因? while(inClientFile>>pointname>>u>>v>>X>>Y>>Z)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chaochao1980
2005-03-30
打赏
举报
回复
可能原因是你使用了字符数组,你把字符数组换成string试一下。
fengfeng2003
2005-03-30
打赏
举报
回复
while(inClientFile>>pointn>>u>>v>>X>>Y>>Z)
这样不行的
u、v等都是数组,必须一个一个来
fengfeng2003
2005-03-30
打赏
举报
回复
可以啊
#include <iostream>
#include <fstream>
#include <string>
#include <algorithm>
using namespace std;
void main()
{
double iNum[5];
string strTag;
ifstream in("2.txt");
while (in >> strTag >> iNum[0] >> iNum[1] >> iNum[2] >>iNum[3] >> iNum[4])
{
cout << strTag << '\t';
copy(iNum, iNum+4, ostream_iterator<int>(cout, "\t"));
}
}
aran_rs
2005-03-30
打赏
举报
回复
但是在我强制它循环时,又读进去了
前一个程序是 CFileDialog dlg(TRUE,"txt",NULL,
OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
"Îı¾Îļþ(*.txt)|*.txt|ËùÓÐÀàÐÍ(*.*)|*.*||", NULL);
if(dlg.DoModal()==IDOK)
{
filename1=dlg.GetPathName();
m_input=filename1;
ifstream inClientFile(filename1,ios::in);
while(inClientFile>>pointn>>u>>v>>X>>Y>>Z)
{ for(i=0;;i++)
{
m[2*i*11] =X[i];
m[2*i*11+1] = Y[i];
m[2*i*11+2] =Z[i];
m[2*i*11+3] = 1;
m[2*i*11+4] = 0;
m[2*i*11+5] = 0;
m[2*i*11+6] = 0;
m[2*i*11+7] = 0;
m[2*i*11+8] = -u[i]*X[i];
m[2*i*11+9] = -u[i]*Y[i];
m[2*i*11+10] =- u[i]*Z[i];
m[(2*i+1)*11] = 0;
m[(2*i+1)*11+1] = 0;
m[(2*i+1)*11+2] = 0;
m[(2*i+1)*11+3] = 0;
m[(2*i+1)*11+4] = X[i];
m[(2*i+1)*11+5] = Y[i];
m[(2*i+1)*11+6] = Z[i];
m[(2*i+1)*11+7] = 1;
m[(2*i+1)*11+8] = -v[i]*X[i];
m[(2*i+1)*11+9] = -v[i]*Y[i];
m[(2*i+1)*11+10] = -v[i]*Z[i];
}
for(int j=0;j<49;j++)
{
n[j*2+0]=u[j];
n[j*2+1]=v[j];}}
但是读不进去,但是如果我强制它读
char pointn[6];
double u[49],v[49],X[49],Y[49],Z[49];
for (int kt=0;kt<49;kt++)
{
inClientFile>>pointn>>u[kt]>>v[kt]>>X[kt]>>Y[kt]>>Z[kt];
}
// while(inClientFile>>pointn>>u>>v>>X>>Y>>Z)
for(i=0;i<49;i++)
{
m[2*i*11] =X[i];
m[2*i*11+1] = Y[i];
m[2*i*11+2] =Z[i];
m[2*i*11+3] = 1;
m[2*i*11+4] = 0;
m[2*i*11+5] = 0;
m[2*i*11+6] = 0;
m[2*i*11+7] = 0;
m[2*i*11+8] = -u[i]*X[i];
m[2*i*11+9] = -u[i]*Y[i];
m[2*i*11+10] =- u[i]*Z[i];
m[(2*i+1)*11] = 0;
m[(2*i+1)*11+1] = 0;
m[(2*i+1)*11+2] = 0;
m[(2*i+1)*11+3] = 0;
m[(2*i+1)*11+4] = X[i];
m[(2*i+1)*11+5] = Y[i];
m[(2*i+1)*11+6] = Z[i];
m[(2*i+1)*11+7] = 1;
m[(2*i+1)*11+8] = -v[i]*X[i];
m[(2*i+1)*11+9] = -v[i]*Y[i];
m[(2*i+1)*11+10] = -v[i]*Z[i];
}
又读进去了
arrowcy
2005-03-30
打赏
举报
回复
好像c++标准输入输出度浮点数不太对阿
ACM-服务
顺序
服务
顺序
Time Limit:1000MS Memory Limit:65536KTotal Submit:142 Accepted:27 Description 若干个顾客同时等待一项服务。顾客i需要的服务时间为ti。你的任务是安排n个顾客的服务次序使总的等待时间最小。总的等待时间是指每个顾客等待服务的时间的总和。Input 从文本
文件
读入
数据。该
文件
有若干测试数据,每组测试数据有两行,其第一
文件
合并——几个注意点
有两个磁盘
文件
,各存放一行字母,要求把这两个
文件
中的信息合并,按照字母
顺序
排列,输出到
文件
C #include<stdio.h> #include<stdlib.h> int main() { FILE *fp1,*fp2,*fp3; char s[100],temp,ch; int i,j; if((fp1=fopen("D:\\A.txt","r"))==NULL) //双引号 { printf("error!\n"); exit(0); } if((f
lammps read_data势参数设置常见的一个小
问题
如果使用混合势,需要设置多种势类型,不方便把势参数写到data
文件
,最好的方法是把data
文件
内的势参数全部删掉,在in
文件
设置势参数。出现这个错误,主要是因为lammps对read_data、势类型和势参数三部分的命令有一个
顺序
要求。这种情况下,in
文件
对应的命令
顺序
为:势类型、read_data、势参数(如果需要修改替换的话)。本文介绍read_data命令
读入
data
文件
势参数设置常见的一个小
问题
。对应的命令
顺序
为:read_data、势类型、势参数。不使用混合势,一般常用以上方法。
关于C语言中
文件
的基本操作
一.
文件
的打开和关闭 首先确认
文件
路径的字符串及
文件
名,随后使用fopen进行打开
文件
操作 FILE*fp;//定义一个
文件
变量 fp=fopen("D:\\dic.txt","r");//打开
文件
fclose(fp);//关闭
文件
打开参数: 打开方式:r(读),w(写),a(附加);
文件
类型:b; 混合操作+(r+(可读)) 成功打开,可以观察到非零值,否则返回NULL 二.文本
文件
...
VS2005内存数据被自动修改
我的程序中需要
读入
两个
文件
,一个outcode.txt,一个是Lq.txt。系统读取outcode后,outcode的值显示正常,但当读取了Lq后,outcode的前两个值被更改为其他数值。
于是,把outcode.txt和Lq.txt的读取
顺序
反过来,outcode数据正常了,不会被修改了。
分析这种现象的产生原因:
(1)堆栈不够。这个可能性很小,因为outcode和Lq都存入静态存储点,不关堆栈什么事,但是还是把堆栈修改为1000B,上述现象仍然存在。
C++ 语言
65,211
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章