【发布时间】:2016-11-29 17:53:00
【问题描述】:
你好,这可能是一个愚蠢的问题,但我无法为我的世界弄清楚! (在 c 中)
我正在尝试读取同时包含数字和字母的文件,但我只想在我的编程内容中使用数字。看起来像这样:
t1 stuff 12 123 stuff
t1 stuff 12 123 stuff
t1 stuff 12 123 stuff
t2 stuff 12 123 stuff
t2 stuff 12 123 stuff
t3 stuff 12 123 stuff
t4 stuff 12 123 stuff
t4 stuff 12 123 stuff
t4 stuff 12 123 stuff
t33 stuff 12 123 stuff
(它一直这样做到 t33 我只是从 t4 跳到 t33 以避免大列表)
我的做法是:
Struct name {
char t_numbers
etc..
和:
info(struct name*stuff) {
FILE *data;
data= fopen("thefilename", "r");
int i=0;
while (fscanf(file, "%s %s %d %d %s\n",stuff[i].t_numbers, etc etc...) == 5)
...
现在我尝试先将 t_numbers 作为 int 和 t%d 而不是 char,但由于文件中的“T”只能作为 char 然后 s%。
问题是,如何将 stuff[i].t_numbers 用作 int 而不是指针?所以它使用数字而不是其中的“T”。
例子:
while (k<=10) {
while (stuff[i].t_numbers==n) {
ofc 不起作用,因为它是一个与 int 进行比较的指针。但是如何让它发挥作用呢?如何在没有“T”的情况下使用这些数据,这样我就可以做到。
如果这是一个愚蠢的问题或已经被问到(到处搜索),我感到非常抱歉。我对此完全陌生。
(代码可能有拼写错误等,因为它只是一个快速草稿示例)
【问题讨论】:
标签: c computer-science scanf