| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 507 人关注过本帖
标题:[求助]有关输入输出函数的问题
只看楼主 加入收藏
java在线
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2005-7-9
结帖率:100%
收藏
 问题点数:0 回复次数:6 
[求助]有关输入输出函数的问题
在c语言中用gets()和puts()可以输入输出字符串,在c++中输入输出字符串应该怎么写比较好?
搜索更多相关主题的帖子: 函数 输出 输入 字符 
2006-06-29 12:57
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
收藏
得分:0 

无奈。还无接触过。。。。


人在江湖【走】,怎能不挨【刀】;为了能活【口】,唯有把己【超】!come on...
2006-06-29 13:02
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 
以下是引用java在线在2006-6-29 12:57:29的发言:
在c语言中用gets()和puts()可以输入输出字符串,在c++中输入输出字符串应该怎么写比较好?

char str[ ]="This is a test string";
cout << str << endl;
其效果与C中
puts( str );
相当。


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-06-29 13:23
java在线
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2005-7-9
收藏
得分:0 

那如果我要输入一个字符串,是不是
比如:
char str[16];

cin>>str;

就可以了?

2006-07-01 11:31
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 
#include<iostream.h>
int main()
{
char s[20],t[20];
cout << "input a string: ";
cin >> s >> t;
cout << s << ',' << t << endl;
return 0;
}

运行情况
若输入
this is a pencil
则输出
this,is

跟C语言一样,输入时如果遇见空白符(空格等)就终止了相应数据项的填充。

落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-07-01 12:18
yuki
Rank: 2
等 级:新手上路
威 望:5
帖 子:508
专家分:0
注 册:2005-2-4
收藏
得分:0 

最近在学汇编和C混合编程,虽然不符合楼主的要求,但还是过来练练手

源代码:
;f.asm
PUBLIC _gets
PUBLIC _puts

.model small
.186
.code
_gets PROC C s: PTR BYTE
cmp s, BYTE PTR 0
je _on_fail1
mov ah, 1
push si
mov si, OFFSET s
_loop1:
int 21h
cmp al, 0dh
je _on_success
mov BYTE PTR [si], al
inc si
jmp _loop1
_on_success:
mov [si], 0
pop si
mov ah, 2
mov dl, 0ah
int 21h
mov ax, 1
ret
_on_fail1:
mov ax, 0
ret
_gets ENDP

_puts PROC C s: PTR BYTE
cmp s, BYTE PTR 0
je _on_fail2
mov ah, 40h
mov bx, 1
mov cx, 0
push si
mov si, OFFSET s
_loop2:
cmp [si], BYTE PTR 0
je _exit_loop
inc si
inc cx
jmp _loop2
_exit_loop:
pop si
mov dx, OFFSET s
int 21h
mov ah, 2
mov dl, 0ah
int 21h
mov ax, 1
ret
_on_fail2:
mov ax, 0
ret
_puts ENDP
END

/* cmain.cpp */
#ifdef __cplusplus
#define EXT extern "C"
#else
#define EXT extern
#endif

EXT int gets(char *s);
EXT int puts(char *s);

int main() {
char s[80];
gets(s);
puts(s);
return 0;
}

用BC或TC建个PRJ,把这两个文件都添加进去,编译就好了。


我们都在命运湖上荡舟划桨,波浪起伏使我们无法逃离孤行;如果我们迷失方向,波浪将指引我们穿过另一天曙光
2006-07-01 13:25
baidu
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:3811
专家分:0
注 册:2005-11-4
收藏
得分:0 
yuki

偶放弃所有文章版权,偶在BCCN论坛任何贴子,可转贴,可散发,可抄袭,可复制,可被冒名顶替,可被任何人引用到任何文章中且不写出引文出处,偶分文不取。
2006-07-01 14:25
快速回复:[求助]有关输入输出函数的问题
数据加载中...
 
   



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

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