为了账号安全,请及时绑定邮箱和手机立即绑定

关于c语言函数

关于c语言函数

C
kkkbbb 2016-02-19 13:04:37
#include<stdio.h> #include<stdlib.h> #include<string.h> #define da 100 int add(char *p){         p=(char*)malloc(da*sizeof(char));         scanf("%100s",p);         int size=strlen(p);         if(size==da)         p=(char*)realloc(p,(da+10)*sizeof(char));         return 0; } int main(void){         char *p,*t;         int size,nbytes;         add(p);         add(t);         size=strlen(p);         nbytes=strlen(t);         if(size!=nbytes){         printf("两次数据大小不一\n");         return -1; }         printf("%d\n",size);         printf("%s\n",p);         printf("%c\n",p[1]);         free(p);         free(t);         return 0; }这些代码编译通过,但是运行时  输入完字符串以后会提示段错误,  如果去掉add函数,把add里的东西都放到main里  程序编译完后正常运行,,这是为啥  指针要怎么传入

1 回答

没有找到匹配的内容?试试慕课网站内搜索吧

添加回答

代码语言

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号