见者有份,一起来理解一下这个C程序
#include <string.h>
#include <stdio.h>
#include <sys/types.h>
#ifndef PORT
#define PORT 3000
#endif
u_short PORT_NUMBER = PORT;
int run_help(char *res, char *buffer, int *i_ptr);
#define BUFFER_SIZE 80
#define RES_SIZE 300
#define EXIT_CMD "exit"
void run() {
char buffer[BUFFER_SIZE];
int i = 0;
char res[RES_SIZE];
while (i < RES_SIZE) {
if (!run_help(res, buffer, &i)) break;
}
res[i+1] = 0;
printf(res);
printf("\n\n");
}
int run_help(char *res, char *buffer, int *i_ptr) {
fgets(buffer, BUFFER_SIZE, stdin);
// code to get rid of newlines and other stuff at end of string
int wordlen = strlen(buffer);
if (buffer[wordlen - 2] == 13) {
buffer[wordlen - 2] = 0;
wordlen -= 2;
}
else if (buffer[wordlen - 1] == 10) {
buffer[wordlen - 1] = 0;
wordlen -= 1;
}
if (strcmp(buffer, EXIT_CMD) == 0) return 0;
int j = 0;
while (j < wordlen) {
res[*i_ptr] = buffer[j];
(*i_ptr)++;
j++;
}
return 1;
}
都来看看呀
#include <stdio.h>
#include <sys/types.h>
#ifndef PORT
#define PORT 3000
#endif
u_short PORT_NUMBER = PORT;
int run_help(char *res, char *buffer, int *i_ptr);
#define BUFFER_SIZE 80
#define RES_SIZE 300
#define EXIT_CMD "exit"
void run() {
char buffer[BUFFER_SIZE];
int i = 0;
char res[RES_SIZE];
while (i < RES_SIZE) {
if (!run_help(res, buffer, &i)) break;
}
res[i+1] = 0;
printf(res);
printf("\n\n");
}
int run_help(char *res, char *buffer, int *i_ptr) {
fgets(buffer, BUFFER_SIZE, stdin);
// code to get rid of newlines and other stuff at end of string
int wordlen = strlen(buffer);
if (buffer[wordlen - 2] == 13) {
buffer[wordlen - 2] = 0;
wordlen -= 2;
}
else if (buffer[wordlen - 1] == 10) {
buffer[wordlen - 1] = 0;
wordlen -= 1;
}
if (strcmp(buffer, EXIT_CMD) == 0) return 0;
int j = 0;
while (j < wordlen) {
res[*i_ptr] = buffer[j];
(*i_ptr)++;
j++;
}
return 1;
}
都来看看呀
...全文
相关推荐
认证杯C题,一起来参观学习吧
在“认证杯C题,一起来参观学习吧”这个主题中,我们可以推测这是一场与编程、算法或数学建模相关的竞赛。"C题"通常在编程比赛中指的是第三道题目,通常难度介于A和B之间,挑战性适中。
S3C44B0的初始化程序的理解
S3C44B0是一款基于ARM7TDMI内核的微控制器,广泛应用于嵌入式系统设计。本文将深入探讨S3C44B0的初始化程序,以帮助初学者更好地理解其工作原理。
深入理解C语言程序的方法.pdf
由于其重要性,对于高校C语言程序设计教学中存在的问题,本文提出了以能力培养为导向的教学方案,通过立体化、综合化学习方法来深入理解C语言程序。
C语言程序的理解与编译优化.pdf
然而,C语言程序的理解和编译优化是一个复杂的过程,需要程序员具备深入的理论基础和实践经验。从C语言程序的理解开始,需要了解C语言的基本语法和语义结构。
很好玩的C程序
C语言的经典程序往往能让人深入了解其底层工作原理,这对于学习和理解计算机工作方式非常有帮助。


