Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 为什么我不能从文件中生成一维矩阵?_C - Fatal编程技术网

C 为什么我不能从文件中生成一维矩阵?

C 为什么我不能从文件中生成一维矩阵?,c,C,我认为这个程序应该打印数字4,但它没有。我做错了什么?我实际上在尝试将类似的东西应用于字符矩阵。我想让我的程序从档案中读取字符,并将它们保存在一维矩阵中。有什么想法吗?(顺便说一下,我正在使用dev-c)。此外,归档文件非常大(150 mb)。。所以我需要一个非常大的矩阵 #include <stdio.h> #include <iostream> #include <string> #include <math.h> main() {

我认为这个程序应该打印数字4,但它没有。我做错了什么?我实际上在尝试将类似的东西应用于字符矩阵。我想让我的程序从档案中读取字符,并将它们保存在一维矩阵中。有什么想法吗?(顺便说一下,我正在使用dev-c)。此外,归档文件非常大(150 mb)。。所以我需要一个非常大的矩阵

#include <stdio.h>
#include <iostream>
#include <string>
#include <math.h>

main()
{
    char c;
    int matrix[10000000];
    long long  int i; i=0;
    int a;a=0;

    FILE *fp;
    fp=fopen("experiment.txt","r");

    for(i=0;i<7;i++){
        matrix[i]=a;
        a=a++;
    }

    printf("%d",matrix[4]);                   

    fclose(fp);                                 
    exit(0);
    system("pause");
    return 0;
}
#包括
#包括
#包括
#包括
main()
{
字符c;
整数矩阵[10000000];
长整型i;i=0;
int a;a=0;
文件*fp;
fp=fopen(“experiment.txt”,“r”);
对于(i=0;i改变线

a = a++;

请记住,表达式
a++
是后增量运算符,它不等于
a+1
,它将在表达式之后增加
a
,但另一方面
a
被分配给表达式的结果,即
0
,因此它是一种未定义的行为


实际上,你不从这个代码中读取任何文件,但是问题是从文件中读取矩阵?< /p>什么?“但是它不”-它打印什么?为什么“A= A++”——你是不是在混淆?IoString和String是C++。<代码> A= A++<代码>是未定义的行为。你不使用你的代码> char C < /COD>nywhere.
main()
应该是
int main()
。程序中任何地方都不能读取字符
a++;