c - 定义数组时如何避免C中的分段错误?
问题描述
我有一个数组A1[ ]={1,0,1,1,..'X',0,1,'X',.1,0...}
,大到 10 兆二进制整数和一些“X”值(作为 ASCII 整数值),我正在考虑使用malloc
,但我已经定义了数组(我只是复制并粘贴之前的值运行我的代码)。关于如何避免分段错误的任何其他建议?到目前为止,这是我得到的错误:(。
编码:
#include <stdio.h>
#include <stdlib.h>
int main(void) {
//int A[]={'x','x',1,0,'x',0,'x',1,1,1,...};//up to 10M values
int A[]={0,'x',1,'x',1,0,'x',0,'x','x',1,'x',0,'x','x','x','x','x','x',0};
int j;
#define n (sizeof(A)/sizeof(*A)) // bits
printf("Patt size= %d\n",n);
/*Code will be added here to make some calculations with A*/
printf("A ="); // show input
for(j=0; j<n; j++)
printf(" %d",A[j]);
return 0;
}
解决方案
推荐阅读
- python - 将具有特殊格式的文本文档转换为 Pandas DataFrame
- cmake - 如何链接重复的目标名称
- vue.js - Vue 提供的排序库
- java - 如何正确调用 Item2.calculateUnitTotal() 以便我可以将金额添加到总变量
- scala - 如何使用 flatMapConcat?
- python-3.x - Websocket Autobahn Python客户端:如何使用服务器和客户端证书连接到服务器?
- java - 如何在Android中使用数组存储手动生成的编辑文本值
- php - 在标签中的图像上添加有效的检查图像或图标
- r - 如何弃用与 R 包关联的数据?
- docker - 以 Docker 模式运行的 Minikube 在启动仪表板时返回 503