小编Ale*_*l04的帖子

这个C for-loop如何打印文本艺术金字塔?

这是我第一次在这里发帖,希望我做得对.

基本上我需要帮助试图找出我用C编写的一些代码.程序的目的是要求用户输入0到23之间的数字.然后,根据用户输入的数字,半金字塔将打印(就像旧学校马里奥游戏中的那些).我是编程的初学者,仅凭运气就得到了我的代码的答案,但现在我无法确定我的for循环如何提供金字塔形象.

#include <stdio.h>

int main ( void )
{
    int user_i;
    printf ( "Hello there and welcome to the pyramid creator program\n" );
    printf ( "Please enter a non negative INTEGER from 0 to 23\n" );
    scanf ( "%d", &user_i );

    while ( user_i < 0 || user_i > 23 )
    {
        scanf ( "%d", &user_i );
    }

    for ( int tall = 0; tall < user_i; tall++ )
    {
        // this are the two for loops that happened …
Run Code Online (Sandbox Code Playgroud)

c for-loop

25
推荐指数
4
解决办法
7163
查看次数

GDB 检查命令混淆

这听起来可能令人难以置信,但我真的想了解代码的内部工作原理,而不仅仅是坚持更高层次的概念。

所以我的问题是这个。我目前正在阅读“黑客和利用的艺术”,当作者在解释 GDB 命令时,他来解释如何检查某个内存地址。

我的问题是命令的输出

(gdb) x/x $eip
Run Code Online (Sandbox Code Playgroud)

我知道 x 代表十六进制,我不明白的是为什么它会显示这个:

0x8048384  <main+16>:  0x00fc45c7
Run Code Online (Sandbox Code Playgroud)

如果我run i r eip的输出是 0x8048384,那么两个输出不应该都是x/x $eip0x8048384 吗?

在相关主题上,诸如此类的目的是什么

(gbd) x/2x $eip
Run Code Online (Sandbox Code Playgroud)

他说是检查同一个地址的多个单元,一个地址怎么会有多个单元?也许我误解了内存地址背后的概念。我认为一个内存位置只能容纳一件事。

如果这似乎是一个愚蠢的问题,我再次道歉。我很乐意提供帮助和进一步研究的链接。我真的很想了解这一点。

c assembly gdb

3
推荐指数
1
解决办法
658
查看次数

检查一个数字是否在free pascal范围内

我试图找出将使用Free Pascal case语句的示例传递给简单if语句的正确方法.

使用案例将是

begin usingCaseStatements;

var
  user_age : Integer;

begin

  Writeln('Please enter your age');
  Readln(user_age);

  case user_age of
  1..12 : Writeln('You are too young');
  else
    Writeln('Invalid input');
  end;

  Writeln('Please any key to terminate the program');
  Readln();
end.
Run Code Online (Sandbox Code Playgroud)

-----使用if语句--------

begin usingCaseStatements;

var
  user_age : Integer;

begin

  Writeln('Please enter your age');
  Readln(user_age);

  if user_age in 1..12 then
    Writeln('You are too young')
  else
    Writeln('Invalid input');
  Writeln('Please any key to continue');
  Readln();
end.
Run Code Online (Sandbox Code Playgroud)

我已经尝试在if-statement snipet中替换"in"而没有任何运气在我试过的if (user_age = 1..12) then一点上它只给了我一个错误,编译器声明该语句正在等待')'但它发现..代替.我对FPC非常陌生,所以非常感谢帮助和提示.

delphi pascal freepascal range lazarus

3
推荐指数
1
解决办法
4569
查看次数

匹配两个Python字符串中的字符

我试图在Python中打印两组字符串之间的共享字符,我这样做是希望实际上找到如何使用除python正则表达式之外的任何东西(我不知道正则表达式,所以这可能是一个好时机学习它).

所以,如果first_word = "peepa"second_word = "poopa"我想的返回值是:"pa" 因为在这两个变量是共享的字符是p和.到目前为止,我正在关注如何使用re模块的文档,但我似乎无法掌握这个的基本概念.

关于如何解决这个问题的任何想法?

python regex

3
推荐指数
1
解决办法
2613
查看次数

标签 统计

c ×2

assembly ×1

delphi ×1

for-loop ×1

freepascal ×1

gdb ×1

lazarus ×1

pascal ×1

python ×1

range ×1

regex ×1