#29191: Segmentation Fault 怎麼排除QAQ


110703046@g.nccu.edu.tw (hys)

學校 : 不指定學校
編號 : 178973
來源 : [118.150.147.45]
最後登入時間 :
2022-03-22 00:58:45
b923. stack 堆疊的模板題 | From: [118.150.147.45] | 發表日期 : 2022-02-04 12:02

遇到Segmentation fault真的超崩潰q

 

#include<stdio.h>

int main(void)

{

  int stack[1000]={0};

  int tmp, m;

  int *ptr=stack;

  scanf("%d", &m);

  for(int i=0; i<m; i++){

    scanf("%d", &tmp);

    if(tmp==1){

      *ptr=0;

      ptr--;

    } else if(tmp==2){

      printf("%d\n", *ptr);

    } else if(tmp==3){

      if(*ptr==0){

        scanf("%d", &ptr);

      } else if(*ptr!=0){

        ptr++;

        scanf("%d", &ptr);

      }

    }      

  }

  return 0;

}

 
#29192: Re:Segmentation Fault 怎麼排除QAQ


fire5386 (becaidorz)

學校 : 國立清華大學
編號 : 115822
來源 : [140.114.217.8]
最後登入時間 :
2024-04-13 22:06:23
b923. stack 堆疊的模板題 | From: [114.25.104.225] | 發表日期 : 2022-02-04 12:05

stack[1000] 太小 (n <= 100000)

 
#29193: Re:Segmentation Fault 怎麼排除QAQ


110703046@g.nccu.edu.tw (hys)

學校 : 不指定學校
編號 : 178973
來源 : [118.150.147.45]
最後登入時間 :
2022-03-22 00:58:45
b923. stack 堆疊的模板題 | From: [118.150.147.45] | 發表日期 : 2022-02-04 12:16

stack[1000] 太小 (n <= 100000)

其實是因為開100000也segmentation fault才想說開小一點改成1000但沒有用

 
#29194: Re:Segmentation Fault 怎麼排除QAQ


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [101.136.203.77]
最後登入時間 :
2024-04-07 15:34:14
b923. stack 堆疊的模板題 | From: [39.8.36.109] | 發表日期 : 2022-02-04 13:54

遇到Segmentation fault真的超崩潰q


        scanf("%d", &ptr);


ptr是指標,不用&吧

 
ZeroJudge Forum