【发布时间】:2017-07-31 15:47:18
【问题描述】:
我是 TurboC 的初学者,我的问题是在 if/else 语句中放入一个“单词”(字符串),然后它的输出在 printf 上
这是我的错误代码
#include <stdio.h>
main(){
int enter;
string thisword;
clrscr();
printf("Press number 1 then enter ");
scanf("%i",&enter);
if(enter==1){
thisword = 'Thanks';
}
else{
thisword = 'Error';
}
printf("\n%s",thisword);
getch();
return.0;
}
我不想将 printf 作为语句放在每个 if/else 括号中,例如
#include <stdio.h>
main(){
int enter;
clrscr();
printf("Press number 1 then enter ");
scanf("%i",&enter);
if(enter==1){
printf("\n Thanks");
}
else{
printf("\n Error");
}
getch();
return.0;
}
【问题讨论】:
-
你的程序编译正确吗?您正在使用 C++ 中的
string -
Useful link.....
-
C 没有也从来没有原生字符串类型。按照惯例,该语言使用以空字符结尾的字符数组,即以 '\0' 结尾。
-
不是它在这里,但是当有人使用来自哈佛的几乎毫无价值的
cs50.h标头时,我经常在 C 代码中看到这一点typedef char *string;(伙计,我想见见那些认为那是教初学者的好东西)。他们应该坚持把法庭小丑吐出来,把工程留给其他学校。 -
定义宏(#define string char*)或typedef(char * string)并使用双引号进行字符串赋值。
标签: c string if-statement char