Spyke
Atlusbreply
lemmy.world

What about a pointer to a series of pointers which point to chars?

11

NASA's 11th rule: All forms of indirection must indirect 12 times. This is not an upper or lower bound. This is the exact number of indirections. Why? F*** you, that's why.

5
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>

char* addStrings(char* as, char*bs){
        int aL=strlen(as);
        int bL=strlen(bs);
        if (aL<bL){
                char* temp=bs;
                int tL=bL;
                bs=as;
                bL=aL;
                as=temp;
                aL=tL;
        }
        char* cs = malloc(aL+2);
        cs[aL+1]='\0';
        bool carry = false;
        int bi=bL-1;
        for(int ai=aL-1; ai>=0; ai--,bi--){
                char a=as[ai];
                char b='0';
                if(bi>=0)b=bs[bi];
                char c=a+b-'0';
                if(carry)c++;
                carry=c>'9';
                if(carry)c-=10;
                cs[ai+1]=c;
        }
        if(carry) cs[0]='1';
        else cs[0]='0';
        return cs;
}

int main(int argc, char**args){
        printf("%s + %s = %s\n", args[1] , args[2] , addStrings(args[1] , args[2]));
}
9

Yeah, but in computing (well, specifically the language this slide is about) they're referred to as integers and not referred to as "whole numbers" or any other synonym. If you're looking up something to do with integers in the documentation, you need to have the word "integer" in your vocabulary as "the" way to refer to numbers without decimal places to find what you're looking for. Same way you need to know "string" instead of "word" or "text field" or "sentence".

11
lemmy.ca

JavaScript trying to look nonchalant in the corner.

50
lemmy.today

Including nothing. Actually, depending on the language, multiple types of nothing (null vs uninitialized)

13

actually, you can even store pointers to nothing in memory. you just do:

void x;
void* x_ptr = &x;

then you can use it to invoke functions that take no arguments like this:

void open_texteditor (void editor_choice)
{
    // do nothing with the editor_choice because there is only one sensible editor
    open_nano(); 
    return void;
}
void favorite_texteditor;
void result = open_texteditor(favorite_texteditor);
print_error_on_bad_result(result);

(note that this is a joke comment)

6
lemmy.dbzer0.com

I mean, in Python, Int() literally is a pre - formed function for per - forming math on strings.

20
feddit.org

IIRC int() doesn't let you do math on strings, it converts strings into integers and then you can do math with those numbers.

17

Yes. It converts ... well, any data type, really, to an int, and then you can do math on that value, via the normal Python syntax.

My point was that Int() is pre - formed... the author of this slide here is hopefully, before they switch to the next side, asking the classroom if there is anything wrong with their slide.

Small spelling errors are often trvial in written language, but uh... they're kind of a very big deal in code.


You... could make a function that directly does some math operations on a string.

You could try to set up a bitshifting scheme, you could essentially make FancyMathInt(x,y), where x is converted to an int, and, perhaps hilariously, y is a string of math operations done to x, after y itself is parsed and converted to an instruction set...

There's a lot of ways you could do that.

... Most of them are probably stupid, but, niche edges do sometimes arise where something like that could be useful.

1
spujbreply
lemmy.cafe

does it say programming 101 somewhere

1
Rooster326reply
programming.dev

No programming 101 is what happens when you perform calculations on a string.

Please do try to keep up.

2
spujbreply
lemmy.cafe

oh i see we are just being judgmental for fun my fault for assuming it was genuine :(

0

You can very much perform calculations on strings, and its a very cool thing, but i think thats wayyy above the level that this presentation is meant for cause you probably should know what integers are before that, even outside of programming...

8

You reached the end