| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 460 人关注过本帖
标题:求助:有关指针参数传递的问题
只看楼主 加入收藏
灰色代言
该用户已被删除
收藏
已结贴  问题点数:50 回复次数:5 
求助:有关指针参数传递的问题
提示: 作者被禁止或删除 内容自动屏蔽
搜索更多相关主题的帖子: 指针 参数 
2010-07-28 02:56
BlueGuy
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:29
帖 子:4476
专家分:4055
注 册:2009-4-18
收藏
得分:10 
char swap(char,char);
char swap(char *p1,char *p2)

我就是真命天子,顺我者生,逆我者死!
2010-07-28 09:00
encounter
Rank: 5Rank: 5
来 自:扬州
等 级:职业侠客
威 望:2
帖 子:150
专家分:359
注 册:2010-7-24
收藏
得分:10 

char *str1[20],*str2[20],*str3[20];这是什么

 
*p[]是指针数组呀
只要定义一个有3个元素的 指针数组
不就OK了

*str[3]
分别指向3个字符串

ping   nbtstat   netstat   tracert    nat   at    ftp   telnet..................
2010-07-28 09:53
BJ_BOY
Rank: 4
等 级:业余侠客
威 望:1
帖 子:77
专家分:225
注 册:2010-2-4
收藏
得分:30 
//在dev C++中调试通过!
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int main( )
{
    char swap(char*,char*);         //你这里的原型声明与原型定义时的原型不相符!
    char str1[20],str2[20],str3[20]; //楼主没有弄清楚字符串数组与字符串指针的区别吧?
    int i;
    printf("Input three lines:\n");
    gets(str1);
    gets(str2);
    gets(str3);
    if(strcmp(str1,str2)>0)
    swap(str1,str2);
    if(strcmp(str1,str3)>0) swap(str1,str3);
    if(strcmp(str2,str3)>0) swap(str2,str3);
    printf("Now the order is:\n");
    printf("%s\n%s\n%s\n",str1,str2,str3);
   
    system("PAUSE");
    return 0;
}

char swap(char *p1,char *p2)
{
    char p[20];  //楼主没有弄清楚字符串数组与字符串指针的区别吧?
    strcpy(p,p1);
    strcpy(p1,p2);
    strcpy(p2,p);
    return 0;
}
2010-07-28 11:33
灰色代言
该用户已被删除
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2010-07-28 20:18
vbird
Rank: 1
等 级:新手上路
帖 子:5
专家分:5
注 册:2010-7-30
收藏
得分:0 
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void swap(char *p,char *q);
int main()
{
int i;
char *str[3];
printf("please input three string :\n");
for(i=0;i<3;i++)
{
str[i]=(char *)malloc(20);
scanf("%s",str[i]);
}
if(strcmp(str[0],str[1])>0)swap(str[0],str[1]);
if(strcmp(str[0],str[2])>0)swap(str[0],str[2]);
if(strcmp(str[1],str[2])>0)swap(str[1],str[2]);
printf("Now the order is :\n");
for(i=0;i<3;i++)
printf("%s\n",str[i]);
}
void swap (char *p,char *q)
{
char s[20];
strcpy(s,p);
strcpy(p,q);
strcpy(q,s);
}
我用gcc 试过是对的。
2010-07-30 11:15
快速回复:求助:有关指针参数传递的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.064871 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved